🎭 Core Transformation: - Reframe project as AI companion bot with Kasane Teto personality - Focus on natural conversation, multimodal interaction, and character roleplay - Position video recording as one tool in AI toolkit rather than main feature 🏗️ Architecture Improvements: - Refactor messageCreate.js into modular command system (35 lines vs 310+) - Create dedicated videoRecording service with clean API - Implement commandHandler for extensible command routing - Add centralized configuration system (videoConfig.js) - Separate concerns: events, services, config, documentation 📚 Documentation Overhaul: - Consolidate scattered READMEs into organized docs/ directory - Create comprehensive documentation covering: * AI architecture and capabilities * Natural interaction patterns and personality * Setup guides for AI services and Docker deployment * Commands reference focused on conversational AI * Troubleshooting and development guidelines - Transform root README into compelling AI companion overview 🤖 AI-Ready Foundation: - Document integration points for: * Language models (GPT-4/Claude) for conversation * Vision models (GPT-4V/CLIP) for image analysis * Voice synthesis (ElevenLabs) for speaking * Memory systems for conversation continuity * Personality engine for character consistency 🔧 Technical Updates: - Integrate custom discord.js-selfbot-v13 submodule with enhanced functionality - Update package.json dependencies for AI and multimedia capabilities - Maintain Docker containerization with improved architecture - Add development and testing infrastructure 📖 New Documentation Structure: docs/ ├── README.md (documentation hub) ├── setup.md (installation & AI configuration) ├── interactions.md (how to chat with Teto) ├── ai-architecture.md (technical AI systems overview) ├── commands.md (natural language interactions) ├── personality.md (character understanding) ├── development.md (contributing guidelines) ├── troubleshooting.md (problem solving) └── [additional specialized guides] ✨ This update transforms the project from a simple recording bot into a foundation for an engaging AI companion that can naturally interact through text, voice, and visual content while maintaining authentic Kasane Teto personality traits.
55 lines
1.9 KiB
Text
55 lines
1.9 KiB
Text
# --- Stage 1: Install node_modules ---
|
|
FROM node:20-slim as dependencies
|
|
|
|
WORKDIR /opt/bot
|
|
COPY package*.json ./
|
|
RUN npm install --no-audit --no-fund
|
|
|
|
# --- Stage 2: Development Build ---
|
|
FROM node:20-slim
|
|
|
|
# Install system dependencies for Discord and virtual display
|
|
ARG DEBIAN_FRONTEND=noninteractive
|
|
RUN apt-get update && \
|
|
apt-get install -y --no-install-recommends \
|
|
curl ca-certificates sudo \
|
|
# ── Discord runtime deps ──────────────────
|
|
libatomic1 libnotify4 libnspr4 libnss3 libxss1 libgbm1 \
|
|
libgconf-2-4 libxtst6 libgtk-3-0 \
|
|
# ── GUI / audio / misc ───────────────────
|
|
xvfb pulseaudio openbox \
|
|
tigervnc-standalone-server tigervnc-common fonts-liberation \
|
|
x11vnc \
|
|
# ── Audio processing for voice recording ──
|
|
ffmpeg libopus0 libopus-dev \
|
|
# ── Encryption and build tools for video recording ──
|
|
libsodium23 libsodium-dev build-essential libtool autoconf \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# Download and install Discord
|
|
WORKDIR /opt/preinstall
|
|
RUN curl -L https://discord.com/api/download/stable?platform=linux -o discord.deb && \
|
|
dpkg -i discord.deb || apt-get -f install -y
|
|
|
|
# Create a non-root user
|
|
RUN useradd --create-home --shell /bin/bash bot && \
|
|
adduser bot sudo && \
|
|
echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
|
|
|
|
# Set up the bot directory
|
|
WORKDIR /opt/bot
|
|
# Copy pre-installed node_modules from the 'dependencies' stage
|
|
COPY --from=dependencies /opt/bot/node_modules ./node_modules
|
|
# Copy entrypoint and set permissions
|
|
COPY entry.sh .
|
|
RUN chmod +x /opt/bot/entry.sh
|
|
# The rest of the source code will be mounted as a volume
|
|
|
|
# Set ownership and user
|
|
RUN chown -R bot:bot /opt/bot
|
|
USER bot
|
|
|
|
# Set environment and entrypoint
|
|
ENV DISPLAY=:99
|
|
RUN mkdir -p /run/dbus
|
|
ENTRYPOINT dbus-daemon --system --fork --nofork --address unix:/run/dbus/system_bus_socket & exec /opt/bot/entry.sh "$@"
|