13 Commits

Author SHA1 Message Date
larchanka
7b21f6d508 ollama -> lemonade 2026-03-11 20:58:38 +01:00
larchanka
4e0fe4739c fix: full path for ollama 2026-02-28 17:52:33 +01:00
larchanka
e5d71833eb FP-02: Add WhisperConfig and FileProcessorConfig to config system
- Add WhisperConfig interface: modelName, language, modelDir
- Add FileProcessorConfig interface: uploadDir, maxFileSizeBytes,
  textMaxInlineChars, ocrModel, ocrEnabled
- Add both to AppConfig and DEFAULT_CONFIG
- Add env var overrides in mergeEnv() for all new fields
- Update config.json.example with new sections
- All 156 tests pass, TypeScript build clean
2026-02-21 23:59:46 +01:00
larchanka
9ce3b0cdb5 feat: initial setup for internal dashboard and DB-01 task completion 2026-02-21 00:34:42 +01:00
larchanka
79bddec91f docs: update README, AI-Agent, and architecture with session memory and persistent browser details 2026-02-20 23:27:06 +01:00
larchanka
1443cf4301 M1-02: Add ModelManagerConfig to configuration system
- Add ModelManagerConfig interface with smallModelKeepAlive, mediumModelKeepAlive,
  largeModelKeepAlive (string|number, Ollama duration format) and warmupPrompt (string)
- Add modelManager section to AppConfig interface
- Add defaults: small=10m, medium=30m, large=60m, warmupPrompt=hello
- Wire env var overrides: MODEL_MANAGER_{SMALL,MEDIUM,LARGE}_KEEP_ALIVE and
  MODEL_MANAGER_WARMUP_PROMPT
- Update config.json.example with modelManager section
2026-02-20 23:27:06 +01:00
larchanka
e65b1cef9d P12-03: Add browser service configuration to config.json.example
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-17 14:43:12 +01:00
larchanka
35f07ca9f9 Add P11 reminder system task specifications and update board
- Add all P11 task specification files (P11-01 through P11-13)
- Update _BOARD.md with P11 tasks
- Update PLAN.md and TASKS.md with reminder system details
- Update config.json.example and config.ts (if needed)
- Update generator-service.ts (if needed)

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-17 14:43:12 +01:00
larchanka
938fca9884 P10-04, P10-05, P10-06: Improved model selection and configurable planner complexity
P10-04: Improved Model Selection Fallback
- Update ExecutorAgent to include _complexity from plan.complexity in context
- Update GeneratorService to check context._complexity when modelClass is missing
- Fallback order: input.modelClass → context._complexity → 'medium'
- Ensures nodes without explicit modelClass use plan's global complexity

P10-05: Configurable Planner Complexity
- Add plannerComplexity to ModelRouterConfig interface
- Set default plannerComplexity to 'medium' in DEFAULT_CONFIG
- Add environment variable support: MODEL_ROUTER_PLANNER_COMPLEXITY
- Update config.json.example with plannerComplexity field
- Update Orchestrator to use getConfig().modelRouter.plannerComplexity
- Remove hardcoded 'medium' complexity from runTaskPipeline

P10-06: Model Selection Verification
- Update config.json with plannerComplexity: 'large' for testing
- Document verification steps and success criteria
- All code changes complete, ready for manual verification testing

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-17 14:43:12 +01:00
larchanka
55c9c78bee Format config.json.example with indentation for easier editing
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-17 09:43:50 +01:00
larchanka
43197732fd P7-01: RAG vector search with sqlite-vss
- Add sqlite-vss dependency; load extension in RAGStore when opening DB
- Create vss0 virtual table vss_rag_embedding(embedding(N)); N from rag.embeddingDimensions (default 768)
- Insert: write to rag_documents then to vss by rowid; search: vss_search when vss loaded, else dot-product full scan
- Guard: empty vss table returns []; k = max(1, limit) for faiss
- Config: rag.embeddingDimensions, RAG_EMBEDDING_DIMENSIONS; config.json.example updated
- Tests: RAGStore(dbPath, 4) for 4-dim test vectors; relax score assertion for vss (L2 -> 1/(1+d))
- Docs: README, TECH, COMPONENTS, PROJECT, AI-Agent, PLAN, TASKS, BOARD updated; P7-01 in Done

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-17 09:39:51 +01:00
larchanka
5dfea14261 P6-01: RAG SQLite persistence for RAGService
- Add rag.dbPath to config and config.json.example
- Create rag_documents table (id, content, metadata, embedding BLOB)
- RAGStore: insert, search (load + dot-product scoring)
- RAGService uses RAGStore; documents persist across restarts
- Unit tests: insert/search and persistence across store restarts

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-17 09:16:00 +01:00
larchanka
0553656d25 Centralize config, add README and AI-Agent architecture doc
Config:
- Add src/shared/config.ts: load config.json (CONFIG_PATH or ./config.json), merge with env
- Add config.json.example with ollama, telegram, taskMemory, logger, rag, toolHost, cron, modelRouter
- All services/adapters use getConfig() for baseUrl, botToken, allowedUserIds, db paths, log dir/file, embedModel, sandboxDir, model names
- Add config.json to .gitignore

Docs:
- README.md: app description, requirements (Node 20, Ollama, Telegram token), config instructions, env overrides, install/run commands, project layout
- AI-Agent.md: full folder and file structure, TypeScript architecture (process model, protocol, shared/agents/services/adapters/core, data flow)

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-17 00:04:12 +01:00