-
- PipelineService: define pipelines with ordered agent-assigned steps - Run lifecycle: start → markStepStarted → advanceStep → complete - Step output automatically flows as next step input - Pipeline CRUD + Run management REST API routes - E2E test: 106/106 passed (Phase 1 + 2 + 3 + 4)
-
- GoalsService refactored: constructor accepts optional companyId - With companyId: goals stored in data/{companyId}/goals/ - Without: backward-compatible data/goals/ (global) - Company Goals REST API: full OKR CRUD under /api/company/:id/goals - OKR isolation verified: different companies have independent goal spaces - E2E test: 81/81 passed (Phase 1 + 2 + 3) -
- scaffoldNewAgent: create agent skeleton via AgentScaffold directly - depositTemplate: benchmark gating (≥95) + auto-deposit to templates/ - hireWithTraining: full flow (template lookup → scaffold fallback) - Company route: /hire uses hireWithTraining, new /deposit-template endpoint - E2E test: 69/69 passed (Phase 1 + Phase 2)
-
- CompanyService: CRUD (create/get/list/update/shutdown) - Agent Hiring Pipeline: template lookup → copy → context injection - Template registry (_registry.json) with CEO and qa-judge initial templates - resolveAgentDir(companyId, agentId) unified agent directory resolution - Company REST API routes (/api/company/*) - E2E test: 46/46 passed
-
…ze Chinese keyword extraction - Fix: The long trailing history in todo.md drowned out the actual current task keywords because English tokens (e.g. TASK, P2, from) padded the 30-keyword limit beforehand. - Updated extractKeywords: Process Chinese characters first as they carry more weight for NLP context intent. - Added userMessage prefix to searchText in buildSystemPrompt so newly dispatched tasks dominate keyword extraction. - End-to-end e2e test created and passed (27/27 asserts passed)
-
Phase 3 features: - autoReflect: auto-trigger on complex conversations (toolCount>=3 or duration>=60s) - Extracts patterns from successful conversations - Extracts lessons from failed conversations - Auto-solidifies cerebellum plans from 5+ tool-call successes - Writes reflection logs to memory/reflections/ - Updates memory.md 'verified patterns' and 'lessons learned' sections - consolidateMemory: merge short-term sessions older than 7 days into long-term/ - Extracts frequent keywords across merged sessions - Writes consolidated summary to long-term/consolidate-{date}.md - Updates long-term/patterns.md with high-frequency patterns - generateDailyReport: aggregate today's sessions and reflections into daily/{date}.md - API endpoints: POST /:agentId/memory/consolidate, POST /:agentId/memory/daily-report Test results: 16/16 passed (Phase 3 test suite) -
- Hippocampus keyword matching engine (extractKeywords + score) - Cerebellum plan storage (saveCerebellumPlan) - Auto-sync hippocampus-index.json + hippocampus.md - POST /:agentId/memory/cerebellum API endpoint - buildSystemPrompt injects matched plans from hippocampus - Use count & lastUsed tracking on plan access - Chinese n-gram + English word tokenizer with stop words - Fix: score formula uses entry keyword count as denominator - Fix: useCount updates original index entry not spread copy - Verified: OKR plan matched + injected into CEO prompt
-
- Agent as Micro-Container: each agent lives in data/agents/{id}/ with full encapsulation - Persona vs Capability split: agent.md (identity) + .claude/skills/main_skill/SKILL.md (workflow) - Conversations co-located: data/agents/{id}/conversations/ replaces global dir - Meta Skills renamed: meta_hunt, meta_digest, meta_creator, meta_evolving, meta_benchmark, meta_research - Dynamic Hot-Reload: AgentManager.getAgentConfig() falls back to filesystem scan - Parallel Sub-Agent orchestration via Promise.all with multi-terminal UI - Removed SQLite dependency, global skills/ directory, and legacy conversations/ - Full architecture docs: 18-local-filesystem-first-agent-encapsulation.md