Competing installers and checkout-local venv assumptions bypassed PM selection, install consent, and generation lifetimes. Route consumers through PM and installation-bound launchers. Refresh source launchers before obsolete Python entries can be collected. Remove Node, browser, and CUA acquisition engines, obsolete venv-holder handling, detached sync, and unused PM APIs. Keep historical updater exports inert and preserve external tool ownership and native integration. Share product freshness and prepared inputs across builders. Align plugin admission, Docker provisioning, setup instructions, and behavioral tests. Verified targeted Python and JavaScript tests, desktop and web typechecks, scoped lint, real product builds, and the Docker frontend smoke test. The missed post-setup test cleanup is included and verified. Native Windows/macOS execution, full Rust compilation, and the complete repository suite remain unverified. Historical compatibility requirements were preserved and extended, not fully rescanned.
129 lines
2.4 KiB
Plaintext
129 lines
2.4 KiB
Plaintext
# Git
|
|
.git
|
|
.gitignore
|
|
.gitmodules
|
|
|
|
# Python
|
|
__pycache__
|
|
*.py[cod]
|
|
*$py.class
|
|
*.so
|
|
.Python
|
|
*.egg-info/
|
|
dist/
|
|
build/
|
|
!scripts/build/
|
|
!scripts/build/**
|
|
|
|
# Virtual environments
|
|
venv/
|
|
env/
|
|
ENV/
|
|
|
|
# Dependencies
|
|
node_modules
|
|
**/node_modules
|
|
.venv
|
|
**/.venv
|
|
.notebooklm-cli-venv/
|
|
.notebooklm-playwright/
|
|
.pip-cache/
|
|
.uv-cache/
|
|
.cache/
|
|
.build/
|
|
|
|
# Built artifacts that are regenerated inside the image. Excluded so local
|
|
# rebuilds on the developer's machine don't invalidate the npm-install layer
|
|
# that now depends on the full ui-tui/packages/hermes-ink/ tree being present.
|
|
ui-tui/dist/
|
|
ui-tui/packages/hermes-ink/dist/
|
|
|
|
# CI/CD
|
|
.github
|
|
|
|
# Environment files
|
|
.env
|
|
.env.*
|
|
# ...but keep the template: docker/stage2-hook.sh seeds $HERMES_HOME/.env from
|
|
# /opt/hermes/.env.example on first boot (OOF-285 — excluding it silently broke
|
|
# first-boot .env seeding and the API_SERVER_KEY generation that depends on it).
|
|
!.env.example
|
|
|
|
# IDE
|
|
.vscode/
|
|
.idea/
|
|
*.swp
|
|
*.swo
|
|
|
|
# Testing
|
|
.pytest_cache/
|
|
.coverage
|
|
htmlcov/
|
|
|
|
# Documentation
|
|
*.md
|
|
!skills/**/*.md
|
|
!optional-skills/**/*.md
|
|
|
|
# Runtime data (bind-mounted at /opt/data; must not leak into build context)
|
|
data/
|
|
.hermes-docker/
|
|
.notebooklm-home/
|
|
|
|
# Compose/profile runtime state (bind-mounted; avoid ownership/secret issues)
|
|
hermes-config/
|
|
runtime/
|
|
|
|
# ---------- Not needed inside the Docker image ----------
|
|
|
|
# Desktop app source (Tauri/Electron); never installed in the container.
|
|
# apps/shared is the dashboard↔desktop websocket helper and is linked from
|
|
# web/package.json as a file: workspace dep — keep it in the build context.
|
|
apps/
|
|
!apps/shared/
|
|
!apps/shared/**
|
|
|
|
# Test suite — not shipped in production images
|
|
tests/
|
|
|
|
# Documentation site (Docusaurus) and supplementary docs
|
|
website/
|
|
docs/
|
|
|
|
# Keep the source artwork needed by web's icon-generation prebuild.
|
|
assets/
|
|
!assets/
|
|
assets/*
|
|
!assets/nous-girl-black.svg
|
|
!assets/nous-girl-white.svg
|
|
!assets/backgrounds/
|
|
!assets/backgrounds/**
|
|
infographic/
|
|
|
|
# Plugin-level docs (hermes-achievements ships docs/ but the runtime doesn't read them)
|
|
plugins/hermes-achievements/docs/
|
|
|
|
# Nix / Homebrew / AUR packaging metadata — irrelevant to Docker
|
|
nix/
|
|
flake.nix
|
|
flake.lock
|
|
packaging/
|
|
|
|
# Design and planning documents
|
|
plans/
|
|
.plans/
|
|
.hermes/
|
|
|
|
# Repo-level dotfiles that are git-only or dev-tooling config
|
|
.envrc
|
|
.gitattributes
|
|
.hadolint.yaml
|
|
.mailmap
|
|
|
|
# Debug/export artifacts — must never reach image layers (COPY . .)
|
|
/log.txt
|
|
/sqlite_leak_fix.png
|
|
/*.png.bak
|
|
*.tar.gz
|
|
*.tgz
|