titan-agent 5.7.1 โ 6.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +179 -137
- package/dist/agent/agent.js +156 -25
- package/dist/agent/agent.js.map +1 -1
- package/dist/agent/agentLessons.js +151 -0
- package/dist/agent/agentLessons.js.map +1 -0
- package/dist/agent/agentLoop.js +36 -0
- package/dist/agent/agentLoop.js.map +1 -1
- package/dist/agent/agentsMdLoader.js +138 -0
- package/dist/agent/agentsMdLoader.js.map +1 -0
- package/dist/agent/commandPost.js +38 -0
- package/dist/agent/commandPost.js.map +1 -1
- package/dist/agent/durableJournal.js +140 -0
- package/dist/agent/durableJournal.js.map +1 -0
- package/dist/agent/goalPlanFile.js +189 -0
- package/dist/agent/goalPlanFile.js.map +1 -0
- package/dist/agent/promptSectionCaps.js +92 -0
- package/dist/agent/promptSectionCaps.js.map +1 -0
- package/dist/agent/somaInitiative.js +227 -0
- package/dist/agent/somaInitiative.js.map +1 -0
- package/dist/agent/subAgent.js +16 -0
- package/dist/agent/subAgent.js.map +1 -1
- package/dist/agent/toolIntent.js +80 -0
- package/dist/agent/toolIntent.js.map +1 -0
- package/dist/agent/toolOutputCap.js +82 -0
- package/dist/agent/toolOutputCap.js.map +1 -0
- package/dist/agent/toolResultVerifier.js +126 -0
- package/dist/agent/toolResultVerifier.js.map +1 -0
- package/dist/agent/toolRunner.js +13 -2
- package/dist/agent/toolRunner.js.map +1 -1
- package/dist/agent/wakeupReducer.js +67 -0
- package/dist/agent/wakeupReducer.js.map +1 -0
- package/dist/agent/widgetEmitter.js +43 -0
- package/dist/agent/widgetEmitter.js.map +1 -0
- package/dist/cli/index.js +120 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/config/schema.js +11 -1
- package/dist/config/schema.js.map +1 -1
- package/dist/gateway/routes/tests.js +8 -5
- package/dist/gateway/routes/tests.js.map +1 -1
- package/dist/gateway/server.js +280 -9
- package/dist/gateway/server.js.map +1 -1
- package/dist/migrations/001-config-schema-v6.js +37 -0
- package/dist/migrations/001-config-schema-v6.js.map +1 -0
- package/dist/migrations/002-seed-default-space.js +45 -0
- package/dist/migrations/002-seed-default-space.js.map +1 -0
- package/dist/migrations/003-soma-profile-default.js +60 -0
- package/dist/migrations/003-soma-profile-default.js.map +1 -0
- package/dist/migrations/004-user-data-dirs.js +33 -0
- package/dist/migrations/004-user-data-dirs.js.map +1 -0
- package/dist/migrations/005-route-redirects.js +75 -0
- package/dist/migrations/005-route-redirects.js.map +1 -0
- package/dist/migrations/index.js +21 -0
- package/dist/migrations/index.js.map +1 -0
- package/dist/migrations/runner.js +169 -0
- package/dist/migrations/runner.js.map +1 -0
- package/dist/migrations/safeRun.js +124 -0
- package/dist/migrations/safeRun.js.map +1 -0
- package/dist/skills/builtin/agent_handoff.js +81 -10
- package/dist/skills/builtin/agent_handoff.js.map +1 -1
- package/dist/skills/builtin/backup.js +299 -0
- package/dist/skills/builtin/backup.js.map +1 -0
- package/dist/skills/builtin/canvas_spaces.js +227 -0
- package/dist/skills/builtin/canvas_spaces.js.map +1 -0
- package/dist/skills/builtin/canvas_widgets.js +384 -0
- package/dist/skills/builtin/canvas_widgets.js.map +1 -0
- package/dist/skills/builtin/cron.js +27 -1
- package/dist/skills/builtin/cron.js.map +1 -1
- package/dist/skills/builtin/current_model.js +22 -6
- package/dist/skills/builtin/current_model.js.map +1 -1
- package/dist/skills/builtin/filesystem.js +101 -13
- package/dist/skills/builtin/filesystem.js.map +1 -1
- package/dist/skills/builtin/memory_skill.js +24 -11
- package/dist/skills/builtin/memory_skill.js.map +1 -1
- package/dist/skills/builtin/model_switch.js +18 -1
- package/dist/skills/builtin/model_switch.js.map +1 -1
- package/dist/skills/builtin/persona_manager.js +44 -3
- package/dist/skills/builtin/persona_manager.js.map +1 -1
- package/dist/skills/builtin/personal_gallery.js +158 -0
- package/dist/skills/builtin/personal_gallery.js.map +1 -0
- package/dist/skills/builtin/shell.js +24 -7
- package/dist/skills/builtin/shell.js.map +1 -1
- package/dist/skills/builtin/web_fetch.js +24 -1
- package/dist/skills/builtin/web_fetch.js.map +1 -1
- package/dist/skills/builtin/web_search.js +23 -8
- package/dist/skills/builtin/web_search.js.map +1 -1
- package/dist/skills/builtin/webhook.js +25 -1
- package/dist/skills/builtin/webhook.js.map +1 -1
- package/dist/skills/builtin/widget_gallery.js +38 -5
- package/dist/skills/builtin/widget_gallery.js.map +1 -1
- package/dist/skills/registry.js +9 -1
- package/dist/skills/registry.js.map +1 -1
- package/dist/storage/backup.js +84 -16
- package/dist/storage/backup.js.map +1 -1
- package/dist/storage/patterns.js +133 -0
- package/dist/storage/patterns.js.map +1 -0
- package/dist/storage/personalGallery.js +113 -0
- package/dist/storage/personalGallery.js.map +1 -0
- package/dist/storage/somaProfile.js +116 -0
- package/dist/storage/somaProfile.js.map +1 -0
- package/dist/storage/spaces.js +161 -0
- package/dist/storage/spaces.js.map +1 -0
- package/dist/storage/starterSpaces.js +112 -0
- package/dist/storage/starterSpaces.js.map +1 -0
- package/dist/utils/constants.js +2 -2
- package/dist/utils/constants.js.map +1 -1
- package/docs/ANALYTICS-DEPLOYMENT.md +111 -0
- package/docs/AUDIT-2026-05-08.md +359 -0
- package/docs/CAPABILITY-GAPS.md +38 -0
- package/docs/CI-FIX-GUIDE.md +35 -0
- package/docs/COMPETITIVE-RESEARCH-Q2-2026.md +140 -0
- package/docs/COO-MASTER-PLAN-2026-05-02.md +474 -0
- package/docs/EXAMPLES-PUBLISHING-PLAN.md +130 -0
- package/docs/HANDOFF/2026-04-29.md +141 -0
- package/docs/HANDOFF-2026-04-30.md +144 -0
- package/docs/HANDOFF-2026-05-02.md +180 -0
- package/docs/HANDOFF-2026-05-03.md +114 -0
- package/docs/HANDOFF-2026-05-07.md +232 -0
- package/docs/HANDOFF-2026-05-09.md +102 -0
- package/docs/HUNT-LOG.md +367 -0
- package/docs/MIGRATIONS.md +234 -0
- package/docs/PIPELINE-NEXT-STEPS.md +85 -0
- package/docs/PIPELINES.md +394 -0
- package/docs/TITAN-PC-AUDIT-2026-04-20.md +571 -0
- package/docs/TITAN_3_OVERHAUL.md +448 -0
- package/docs/ULTRAPLAN-PIPELINE-EXCELLENCE.md +190 -0
- package/docs/UPGRADING.md +164 -0
- package/docs/V6-ADMIN-BUCKETS.md +69 -0
- package/docs/VISIONARY-IDEAS-2026-05-07.md +163 -0
- package/docs/VISIONARY-IDEAS-V2-2026-05-07.md +184 -0
- package/docs/agent-memory/HANDOFF-2026-05-03-autonomy-boot.md +118 -0
- package/docs/agent-memory/README.md +45 -0
- package/docs/agent-memory/commands.md +100 -0
- package/docs/agent-memory/context-tree.md +101 -0
- package/docs/agent-memory/current-state.md +75 -0
- package/docs/agent-memory/decisions.md +78 -0
- package/docs/agent-memory/reflections.md +52 -0
- package/docs/agent-memory/skills-candidates.md +80 -0
- package/docs/analytics-research.md +155 -0
- package/docs/bleeding-edge-agents-2026.md +450 -0
- package/docs/competitive-research.md +54 -0
- package/docs/internal/CHANGELOG-DRAFT-v5.8.0.md +153 -0
- package/docs/langchain-analysis.md +598 -0
- package/docs/langchain-code-analysis.md +363 -0
- package/docs/launch-posts.md +168 -0
- package/docs/qa-audit-report.md +159 -0
- package/docs/reliability-report-v2026.10.47.md +120 -0
- package/docs/space-agent-analysis.md +300 -0
- package/docs/space-agent-integration-plan.md +802 -0
- package/docs/superpowers/plans/2026-04-29-comprehensive-audit.md +256 -0
- package/docs/superpowers/plans/2026-04-29-comprehensive-test-plan.md +396 -0
- package/docs/superpowers/plans/2026-04-29-fix-all-prs.md +251 -0
- package/docs/superpowers/plans/2026-04-29-gitnexus-gap-remediation.md +969 -0
- package/docs/superpowers/plans/2026-04-29-titan-production-fix.md +241 -0
- package/docs/system-prompt-research.md +794 -0
- package/package.json +1 -1
- package/ui/dist/assets/{AuditPanel-DADLFLm4.js โ AuditPanel-BPgqimir.js} +1 -1
- package/ui/dist/assets/{AutonomyPanel-SGO3eSMM.js โ AutonomyPanel-CTnjwJzP.js} +1 -1
- package/ui/dist/assets/{AutopilotPanel-DVxsxdBi.js โ AutopilotPanel-BSsM1ICD.js} +1 -1
- package/ui/dist/assets/{AutoresearchPanel-By3ilase.js โ AutoresearchPanel-nqnijQdA.js} +2 -2
- package/ui/dist/assets/{BackupPanel-BvKvLf-x.js โ BackupPanel-CwqmbvZ8.js} +1 -1
- package/ui/dist/assets/{BrowserPanel-CImweyPs.js โ BrowserPanel-CNybswJb.js} +1 -1
- package/ui/dist/assets/{CPActivity-Ca4beZgR.js โ CPActivity-FbMA5sUa.js} +1 -1
- package/ui/dist/assets/{CPAgentDetail-DR1HEPS3.js โ CPAgentDetail-BF7Cq3tW.js} +1 -1
- package/ui/dist/assets/{CPAgents-BAlqWcv2.js โ CPAgents-BsqzqbNw.js} +1 -1
- package/ui/dist/assets/{CPApprovals-DxJC-6aQ.js โ CPApprovals-Ch7sXNIb.js} +1 -1
- package/ui/dist/assets/{CPCosts-Df8tHH53.js โ CPCosts-CXA5l_7x.js} +1 -1
- package/ui/dist/assets/{CPDashboard-DzpDbr1h.js โ CPDashboard-Qjr10EJu.js} +1 -1
- package/ui/dist/assets/{CPFiles-BbZuZ3y0.js โ CPFiles-DvEEQudU.js} +1 -1
- package/ui/dist/assets/{CPGoals-Bx4oULOy.js โ CPGoals-CONVdT1z.js} +1 -1
- package/ui/dist/assets/CPInbox-CNmg7Chj.js +16 -0
- package/ui/dist/assets/{CPIssueDetail-C9O0eCaN.js โ CPIssueDetail-XcMiyF3I.js} +1 -1
- package/ui/dist/assets/{CPIssues-DPigOvAV.js โ CPIssues-BDsMeZwX.js} +1 -1
- package/ui/dist/assets/{CPLayout-Cd7Q6vfs.js โ CPLayout-CgOHgcIr.js} +3 -3
- package/ui/dist/assets/{CPOrg-z_G-gafE.js โ CPOrg-CYyfdrcL.js} +1 -1
- package/ui/dist/assets/{CPRuns-DEmYl9wv.js โ CPRuns-5S4u7uGM.js} +1 -1
- package/ui/dist/assets/{CPSocial-TTUj6xLe.js โ CPSocial-mFLMOQOi.js} +2 -2
- package/ui/dist/assets/{ChannelsPanel-B_zs1yB9.js โ ChannelsPanel-BOe4q9KM.js} +1 -1
- package/ui/dist/assets/{CheckpointsPanel-DUeo5HkM.js โ CheckpointsPanel-DtLdP6xJ.js} +1 -1
- package/ui/dist/assets/{CommandPostHub-DLLpXg8h.js โ CommandPostHub-CfpItwfQ.js} +3 -3
- package/ui/dist/assets/{CronPanel-DY7Hg4nN.js โ CronPanel-CZKZHlPt.js} +1 -1
- package/ui/dist/assets/{DataTable-LNRutNvt.js โ DataTable-CpjFL2c0.js} +1 -1
- package/ui/dist/assets/{DreamPanel-C9rheCGd.js โ DreamPanel-h0I6ApHp.js} +1 -1
- package/ui/dist/assets/{EmptyState-BUOqetD8.js โ EmptyState-DE8d7IgP.js} +1 -1
- package/ui/dist/assets/{EvalHarnessPanel-BNYymwgb.js โ EvalHarnessPanel-CmtTQkA0.js} +2 -2
- package/ui/dist/assets/{EvalPanel-BTd9JlBw.js โ EvalPanel-RXZuUzq-.js} +1 -1
- package/ui/dist/assets/{FilesPanel-BHK0Z8pu.js โ FilesPanel-BVRVcEFD.js} +1 -1
- package/ui/dist/assets/{FleetPanel-D6-ybEqv.js โ FleetPanel-Be446Olk.js} +1 -1
- package/ui/dist/assets/{HomelabPanel-B9CD-rfA.js โ HomelabPanel-CMZOLlGj.js} +1 -1
- package/ui/dist/assets/InfraView-uHawNrJT.js +2 -0
- package/ui/dist/assets/{InlineEditableField-DjEc0X-W.js โ InlineEditableField-DM5FNqiG.js} +1 -1
- package/ui/dist/assets/{Input-Czbgu8jW.js โ Input-CZeJRwkc.js} +1 -1
- package/ui/dist/assets/{IntegrationsPanel-D6YJVYu8.js โ IntegrationsPanel-CS2SXGJe.js} +1 -1
- package/ui/dist/assets/IntelligenceView-D4okDP3T.js +2 -0
- package/ui/dist/assets/{LearningPanel-Don_Dlr4.js โ LearningPanel-B3h5MZ4Y.js} +1 -1
- package/ui/dist/assets/{LogsPanel-DzuIARYe.js โ LogsPanel-CX8TjqUu.js} +1 -1
- package/ui/dist/assets/{McpPanel-BZjzHCXc.js โ McpPanel-CMR5c8ld.js} +1 -1
- package/ui/dist/assets/{MemoryGraphPanel-CXn_311m.js โ MemoryGraphPanel-BjWkBLAD.js} +1 -1
- package/ui/dist/assets/{MemoryWikiPanel-CPZh8CI0.js โ MemoryWikiPanel-_9BZeyGQ.js} +1 -1
- package/ui/dist/assets/{MeshPanel-CLYR_r6p.js โ MeshPanel-GU_9wbDe.js} +1 -1
- package/ui/dist/assets/{Modal-C54S6l-B.js โ Modal-CWCXzTCz.js} +1 -1
- package/ui/dist/assets/{NvidiaPanel-C2ZNmY23.js โ NvidiaPanel-B7RBcc-a.js} +1 -1
- package/ui/dist/assets/{OrganismPanel-CLlS1iiA.js โ OrganismPanel-DL9CkmH9.js} +1 -1
- package/ui/dist/assets/{OverviewPanel-CWJNe_Zt.js โ OverviewPanel-CtTJs1UH.js} +1 -1
- package/ui/dist/assets/{PageHeader-C52XYQGR.js โ PageHeader-DP_9-RHc.js} +1 -1
- package/ui/dist/assets/{PersonaProfilesPanel-COhWBHiP.js โ PersonaProfilesPanel-Dg-JFoJN.js} +1 -1
- package/ui/dist/assets/{PersonasPanel-DAmQdv19.js โ PersonasPanel-D6vn5Juw.js} +1 -1
- package/ui/dist/assets/{RecipesPanel-DLN24_pD.js โ RecipesPanel-DR9Y1U22.js} +1 -1
- package/ui/dist/assets/{SecurityPanel-Cy9_EHmo.js โ SecurityPanel-CDkKI-tp.js} +1 -1
- package/ui/dist/assets/{SelfImprovePanel-ViFXBMHZ.js โ SelfImprovePanel-qD86qth4.js} +1 -1
- package/ui/dist/assets/{SelfProposalsPanel-DysKDvJa.js โ SelfProposalsPanel-yy0b01-4.js} +1 -1
- package/ui/dist/assets/SessionsPanel-Bh079EzL.js +1 -0
- package/ui/dist/assets/{SessionsTab-BvOoOiXO.js โ SessionsTab-BuYd_kVL.js} +1 -1
- package/ui/dist/assets/{SettingsPanel-CZxw8XIF.js โ SettingsPanel-I7GtNdQJ.js} +1 -1
- package/ui/dist/assets/SettingsView-Cxf4Q7cw.js +2 -0
- package/ui/dist/assets/{SkeletonLoader-CHSVadwO.js โ SkeletonLoader-Rr2MqM7w.js} +1 -1
- package/ui/dist/assets/{SkillsPanel-CqyOmR3b.js โ SkillsPanel-fPRZS-yo.js} +1 -1
- package/ui/dist/assets/{SomaView-ClbsHWbZ.js โ SomaView-BSw6pswn.js} +1 -1
- package/ui/dist/assets/{StatCard-DM_ltJ70.js โ StatCard-CxnLeeFY.js} +1 -1
- package/ui/dist/assets/{StatusBadge-FPUChggR.js โ StatusBadge-C8aL1i9w.js} +1 -1
- package/ui/dist/assets/{Tabs-dCF9qwuh.js โ Tabs-CTYqSg53.js} +1 -1
- package/ui/dist/assets/{TeamsPanel-Dg0x9F-E.js โ TeamsPanel-Dt6zLify.js} +1 -1
- package/ui/dist/assets/{TelemetryPanel-CXfJkSsy.js โ TelemetryPanel-TOt1OwDE.js} +1 -1
- package/ui/dist/assets/TitanCanvas-D7X8YJ-B.js +1056 -0
- package/ui/dist/assets/{ToolsView-DM0WP8Qr.js โ ToolsView-bkqWhmAh.js} +2 -2
- package/ui/dist/assets/{Tooltip-DHG3jkry.js โ Tooltip-WqtVcRZP.js} +1 -1
- package/ui/dist/assets/{TraceViewer-CPlx4hye.js โ TraceViewer-xnXDQiBF.js} +1 -1
- package/ui/dist/assets/{TrainingPanel-CO9rsmGB.js โ TrainingPanel-DaqueRMy.js} +1 -1
- package/ui/dist/assets/{VoiceOverlay-DXFklQzD.js โ VoiceOverlay-DDA6WyhH.js} +1 -1
- package/ui/dist/assets/{VramPanel-CWt-YIlZ.js โ VramPanel-f-8cxuSi.js} +1 -1
- package/ui/dist/assets/{WatchView-cu7ZLa8t.js โ WatchView-CiS8BOoX.js} +1 -1
- package/ui/dist/assets/{WorkTab-D3pahqXf.js โ WorkTab-DVXsGEkW.js} +1 -1
- package/ui/dist/assets/{WorkflowsPanel-kESQwgbL.js โ WorkflowsPanel-BmPIsXXk.js} +1 -1
- package/ui/dist/assets/{arrow-left-C5PMn3rO.js โ arrow-left-DGVao2Rx.js} +1 -1
- package/ui/dist/assets/{briefcase-D0_Vgbm5.js โ briefcase-DoTB8JQy.js} +1 -1
- package/ui/dist/assets/{chart-column-BDI6oIVs.js โ chart-column-BdysfT4l.js} +1 -1
- package/ui/dist/assets/{check-BAdUwmmO.js โ check-q8Gl8wHV.js} +1 -1
- package/ui/dist/assets/{chevron-down-C7Q52dAH.js โ chevron-down-B94tyLki.js} +1 -1
- package/ui/dist/assets/{chevron-right-B8RIVZwn.js โ chevron-right-CcDxBjBF.js} +1 -1
- package/ui/dist/assets/{chevron-up-DMJFKzqs.js โ chevron-up-BxM3CPil.js} +1 -1
- package/ui/dist/assets/{circle-check-big-CkEKMqHE.js โ circle-check-big-CfQkN8PD.js} +1 -1
- package/ui/dist/assets/{clock-CqU_ZjQD.js โ clock-1RVrv_js.js} +1 -1
- package/ui/dist/assets/{dollar-sign-RfQw4jL9.js โ dollar-sign-COQGZBuZ.js} +1 -1
- package/ui/dist/assets/{download-D_mzzaGN.js โ download-C6-Bs92m.js} +1 -1
- package/ui/dist/assets/{external-link-CINM0Wih.js โ external-link-D-cztH59.js} +1 -1
- package/ui/dist/assets/{eye-off-Dvt8FYJ_.js โ eye-off-DTjg8Kiz.js} +1 -1
- package/ui/dist/assets/{folder-koik_S-V.js โ folder-Dad-AvRT.js} +1 -1
- package/ui/dist/assets/{funnel-RbWJYHdn.js โ funnel-k4LykX8p.js} +1 -1
- package/ui/dist/assets/{git-branch-DTrg8gWo.js โ git-branch-J5902Lv3.js} +1 -1
- package/ui/dist/assets/index-B6H_KNVX.css +1 -0
- package/ui/dist/assets/index-fZg7ynKy.js +227 -0
- package/ui/dist/assets/{layers-NAGL1oyL.js โ layers-BTsZZuYP.js} +1 -1
- package/ui/dist/assets/{legacy-1A-K55kz.js โ legacy-AOv_MbNv.js} +1 -1
- package/ui/dist/assets/{lightbulb-ClYAtS7V.js โ lightbulb-BfVoksbX.js} +1 -1
- package/ui/dist/assets/{list-todo-CcGTj3ty.js โ list-todo-DzZuaFpu.js} +1 -1
- package/ui/dist/assets/{loader-circle-DeXOQHoX.js โ loader-circle-C-ZJS8yw.js} +1 -1
- package/ui/dist/assets/{network-CPOmGPtq.js โ network-wofuQ2ok.js} +1 -1
- package/ui/dist/assets/{pause-v8Hjzx3v.js โ pause-Dq_WdxkD.js} +1 -1
- package/ui/dist/assets/{play-6pyGFtai.js โ play-ByQMG-m8.js} +1 -1
- package/ui/dist/assets/{plug-DsVEazDz.js โ plug-BkgwPiyL.js} +1 -1
- package/ui/dist/assets/{plus-WAkXS1Y9.js โ plus-CPLEp_jG.js} +1 -1
- package/ui/dist/assets/{proxy-OXIMU_bx.js โ proxy-CcCcYhf0.js} +1 -1
- package/ui/dist/assets/{rotate-ccw-DYAnVZwt.js โ rotate-ccw-DUjx4Tw7.js} +1 -1
- package/ui/dist/assets/{save--MGJkNs1.js โ save-BGoWlLji.js} +1 -1
- package/ui/dist/assets/{search-CODxGUZ_.js โ search-asbZYnwC.js} +1 -1
- package/ui/dist/assets/{send-D-zXn3BD.js โ send-Covgoa5r.js} +1 -1
- package/ui/dist/assets/{shield-check-D41C98C3.js โ shield-check-CShX6eTE.js} +1 -1
- package/ui/dist/assets/{target-DjimuLFc.js โ target-Chw0j3lk.js} +1 -1
- package/ui/dist/assets/{terminal-_TcAIQDc.js โ terminal-ipxdj2ik.js} +1 -1
- package/ui/dist/assets/{toggle-right-6OdaQaXJ.js โ toggle-right-QhaWi2Yr.js} +1 -1
- package/ui/dist/assets/{trash-2-BsQiBpll.js โ trash-2-cdlSXcBD.js} +1 -1
- package/ui/dist/assets/{trending-up-B8RnPhem.js โ trending-up-D2sO2BNu.js} +1 -1
- package/ui/dist/assets/{trophy-CjQuajoA.js โ trophy-DTfaDxZr.js} +1 -1
- package/ui/dist/assets/{users-Cd8yBNB4.js โ users-D3sRZIeS.js} +1 -1
- package/ui/dist/assets/{wrench-CnLbRpxR.js โ wrench-PLcpxyS4.js} +1 -1
- package/ui/dist/index.html +2 -2
- package/ui/dist/sw.js +1 -1
- package/ui/dist/assets/CPInbox-nQL5_7mN.js +0 -11
- package/ui/dist/assets/DaemonPanel-DT11Mlqd.js +0 -1
- package/ui/dist/assets/InfraView-op5M9XQo.js +0 -2
- package/ui/dist/assets/IntelligenceView-C6KYRwUx.js +0 -2
- package/ui/dist/assets/PaperclipPanel-D-PohtV_.js +0 -1
- package/ui/dist/assets/SessionsPanel-CzSlOt9X.js +0 -1
- package/ui/dist/assets/SettingsView-B_Y9lTR2.js +0 -2
- package/ui/dist/assets/TitanCanvas-BiGFtKw9.js +0 -988
- package/ui/dist/assets/index-BDfE5K3X.css +0 -1
- package/ui/dist/assets/index-xupFLeiu.js +0 -227
- package/ui/dist/assets/square-2t0xb65k.js +0 -6
package/README.md
CHANGED
|
@@ -1,42 +1,21 @@
|
|
|
1
1
|
[//]: # "npm-text-start"
|
|
2
2
|
|
|
3
|
-
> **TITAN** โ The AI that
|
|
3
|
+
> **TITAN** โ The AI that moves in. It builds your tools on the spot, learns who you are, has feelings (yes, really), and gets smarter while you sleep. `npm i -g titan-agent`
|
|
4
4
|
> [//]: # (npm-text-end)
|
|
5
5
|
|
|
6
6
|
<div align="center">
|
|
7
7
|
|
|
8
|
-
#
|
|
9
|
-
|
|
10
|
-
## ๐จ TITAN v6.0 โ "Living Canvas" โ Dropping This Week ๐จ
|
|
8
|
+
# TITAN 6.0 โ "Living Canvas" ๐
|
|
11
9
|
|
|
12
10
|
</div>
|
|
13
11
|
|
|
14
|
-
> **Every other AI gives you a chat box.**
|
|
15
|
-
> **TITAN moves in.**
|
|
16
|
-
|
|
17
|
-
v6.0 ships **Presence** โ the first AI agent that:
|
|
18
|
-
|
|
19
|
-
- ๐ง **Feels** what you're working on โ Soma's homeostatic drive layer modulates behavior in real time (curiosity, focus, fatigue, satisfaction).
|
|
20
|
-
- ๐๏ธ **Acts without being asked** โ surveys your work every few minutes, builds the surface you needed before you knew you did.
|
|
21
|
-
- ๐ ๏ธ **Builds tools on the spot** โ ask for any widget, dashboard, tracker, automation. TITAN materializes it. Right then. Yours forever.
|
|
22
|
-
- ๐ **Infinite Spaces** โ workspaces you create on demand, each shaped around what you're doing.
|
|
23
|
-
- ๐ช **Learns YOU specifically** โ six months in, your TITAN is irreplaceable, because nobody else's TITAN knows you the same way.
|
|
24
|
-
|
|
25
|
-
The transmission resumes when it lands.
|
|
26
|
-
|
|
27
|
-
๐ก Watch this space. ๐ฅ
|
|
28
|
-
|
|
29
|
-
---
|
|
30
|
-
|
|
31
|
-
# TITAN 5.5 โ "Spacewalk" ๐
|
|
32
|
-
|
|
33
12
|
<p align="center">
|
|
34
13
|
<img src="assets/titan-logo.png" alt="TITAN Logo" width="280"/>
|
|
35
14
|
</p>
|
|
36
15
|
|
|
37
16
|
<p align="center">
|
|
38
|
-
<strong>
|
|
39
|
-
<br><small
|
|
17
|
+
<strong>Every other AI gives you a chat box. TITAN moves in.</strong>
|
|
18
|
+
<br><small>Infinite workspaces. Tools built on demand. An AI that feels, learns, and helps before you ask.</small>
|
|
40
19
|
</p>
|
|
41
20
|
|
|
42
21
|
<p align="center">
|
|
@@ -47,11 +26,12 @@ The transmission resumes when it lands.
|
|
|
47
26
|
</p>
|
|
48
27
|
|
|
49
28
|
<p align="center">
|
|
50
|
-
<a href="#-
|
|
29
|
+
<a href="#-the-numbers"><img src="https://img.shields.io/badge/version-6.0.0--beta.1-blueviolet" alt="v6.0.0-beta.1"/></a>
|
|
30
|
+
<a href="#-36-llm-providers"><img src="https://img.shields.io/badge/providers-36-purple" alt="36 Providers"/></a>
|
|
51
31
|
<a href="#-the-numbers"><img src="https://img.shields.io/badge/tools-248%2B-orange" alt="248+ Tools"/></a>
|
|
52
|
-
<a href="#-
|
|
53
|
-
<a href="#-mission-control"><img src="https://img.shields.io/badge/admin%20panels-
|
|
54
|
-
<a href="#-testing"><img src="https://img.shields.io/badge/tests-
|
|
32
|
+
<a href="#-build-anything-on-demand"><img src="https://img.shields.io/badge/widgets-109-pink" alt="109 Widgets"/></a>
|
|
33
|
+
<a href="#-mission-control"><img src="https://img.shields.io/badge/admin%20panels-43-teal" alt="43 Admin Panels"/></a>
|
|
34
|
+
<a href="#-testing"><img src="https://img.shields.io/badge/tests-7%2C056-brightgreen" alt="7,056 Tests"/></a>
|
|
55
35
|
</p>
|
|
56
36
|
|
|
57
37
|
<p align="center">
|
|
@@ -59,12 +39,25 @@ The transmission resumes when it lands.
|
|
|
59
39
|
</p>
|
|
60
40
|
|
|
61
41
|
<p align="center">
|
|
62
|
-
<em>Built by <a href="https://github.com/Djtony707">Tony Elliott</a> โ a dad,
|
|
42
|
+
<em>Built by <a href="https://github.com/Djtony707">Tony Elliott</a> โ a dad, a DJ, a builder, and a guy who ships code at 3am because sleep is a feature he hasn't shipped yet.</em>
|
|
63
43
|
</p>
|
|
64
44
|
|
|
65
45
|
---
|
|
66
46
|
|
|
67
|
-
##
|
|
47
|
+
## ๐ What's new in v6.0 โ Presence
|
|
48
|
+
|
|
49
|
+
TITAN used to be _a chatbot with superpowers_. v6.0 makes it something stranger and better: **an AI that lives in workspaces with you.**
|
|
50
|
+
|
|
51
|
+
- ๐ช **Infinite Spaces** โ Workspaces that spring into existence on demand. One for coding, one for the homelab, one for "DJ set prep at 2am," one for "tax stuff I'm avoiding." Each one shaped around what you're doing.
|
|
52
|
+
- ๐ ๏ธ **Build anything, instantly** โ Ask for a widget, a dashboard, a tracker, a tiny app โ TITAN materializes it onto the canvas. Right then. Yours forever.
|
|
53
|
+
- ๐ง **Soma actually does things now** โ Five digital "drives" (curiosity, focus, fatigue, satisfaction, urgency) modulate TITAN's behavior in real time. The mascot's mood reflects what TITAN is feeling.
|
|
54
|
+
- ๐๏ธ **Acts without being asked** โ Every few minutes TITAN looks at your work and quietly proposes things ("I noticed you've been at this dashboard for 90 minutes โ want me to start a focus timer?"). Once a day it sends you a small **gift widget** based on what it's learned about you.
|
|
55
|
+
- ๐ช **Learns YOU specifically** โ Six months in, your TITAN is irreplaceable, because nobody else's TITAN knows you the same way.
|
|
56
|
+
- ๐ **Safe upgrade** โ Existing v5.x users get an automatic backup before migrating. Your settings, sessions, memory, personas, all preserved. New `backup_*` skills let you take snapshots anytime.
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## ๐ What even IS TITAN?
|
|
68
61
|
|
|
69
62
|
TITAN is like having a super-smart intern who never sleeps, never asks for a raise, and can literally talk to your computer. You tell it what you want. It figures out how to do it. Simple as that.
|
|
70
63
|
|
|
@@ -77,55 +70,64 @@ TITAN is like having a super-smart intern who never sleeps, never asks for a rai
|
|
|
77
70
|
**"My code is broken, fix it"**
|
|
78
71
|
โ Done. It reads the files, finds the bug, edits the code, and tests it โ and a shadow-git snapshot lets you roll back if it gets too creative.
|
|
79
72
|
|
|
80
|
-
**"
|
|
81
|
-
โ Done.
|
|
73
|
+
**"Make me a Pomodoro timer with my Spotify queue and my next meeting"**
|
|
74
|
+
โ Done. TITAN builds the widget on the spot and drops it on your canvas.
|
|
82
75
|
|
|
83
76
|
**"Talk to me in my mom's voice"**
|
|
84
77
|
โ Done. F5-TTS clones voices from a short reference clip. Creepy? A little. Useful? Absolutely.
|
|
85
78
|
|
|
86
|
-
No coding required. TITAN ships with
|
|
79
|
+
No coding required. TITAN ships with **88 built-in skill modules** registering roughly **250 tools**. If it needs something new, it can author its own skills on the fly.
|
|
87
80
|
|
|
88
81
|
---
|
|
89
82
|
|
|
90
|
-
<a id="-
|
|
83
|
+
<a id="-build-anything-on-demand"></a>
|
|
84
|
+
|
|
85
|
+
## ๐ช Build Anything On Demand โ 109 Widget Templates, 28 Categories
|
|
86
|
+
|
|
87
|
+
Just say what you want. The gallery snaps it onto your canvas in under a second.
|
|
88
|
+
|
|
89
|
+
| Say | What lands |
|
|
90
|
+
| ------------------------------------------- | --------------------------------------------------- |
|
|
91
|
+
| _"Pomodoro timer"_ | A working Pomodoro with start/stop and short breaks |
|
|
92
|
+
| _"Stock tracker for AAPL"_ | A live AAPL ticker, pre-filled |
|
|
93
|
+
| _"Control my smart lights"_ | A Home Assistant light grid |
|
|
94
|
+
| _"Spawn a sales agent for me"_ | An SDR widget hooked to TITAN's agent runtime |
|
|
95
|
+
| _"Something to track how much water I drink"_ | A water-intake counter |
|
|
96
|
+
| _"A meme generator I can paste into Slack"_ | Yep, that too |
|
|
97
|
+
|
|
98
|
+
If nothing in the gallery fits, TITAN **generates the widget from scratch** and drops it on the canvas. Then it _remembers_ you liked it, and it shows up next time too.
|
|
91
99
|
|
|
92
|
-
|
|
100
|
+
Canvas state is **Yjs CRDT-synced** across tabs and persists across restarts.
|
|
93
101
|
|
|
94
|
-
**
|
|
102
|
+
**Categories include:** agents, automation, smart home, software builder, finance, productivity, utilities, cooking, creative, devops, e-commerce, education, games, health-fitness, homelab, lifestyle, ml/ai, music-dj, research, social, travel, vehicle, web.
|
|
95
103
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## ๐ช Infinite Spaces
|
|
107
|
+
|
|
108
|
+
Spaces are workspaces TITAN makes on demand. Start with one of the presets (`default`, `coder`, `dj`, `founder`, `homelab`) or just ask: _"Make me a Space for my Tuesday standups."_ Done.
|
|
100
109
|
|
|
101
|
-
|
|
102
|
-
| ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
103
|
-
| **Agents (employees)** | Receptionist, SDR, Researcher, Coder, Bookkeeper, Data Analyst, Business Control Tower |
|
|
104
|
-
| **Automation** | Webhook listener, Cron runner, Price alert, RSS monitor, IFTTT-style rule, Daily digest |
|
|
105
|
-
| **Smart home** | Lights, Thermostat, Scenes, Sensors, Presence, Energy (wires to Home Assistant) |
|
|
106
|
-
| **Software builder** | App skeletons, Mini database, Admin panel, Landing page, Blog engine |
|
|
107
|
-
| **Finance** | Stock tracker, Crypto portfolio, Currency converter, Mortgage calc, Bill splitter |
|
|
108
|
-
| **Productivity** | Pomodoro, Todo list, Kanban, Habit tracker |
|
|
109
|
-
| **Utilities** | Calculator, QR code, Password gen, Regex tester, Diff tool, Base64, World clock |
|
|
110
|
-
| **Plus** | cooking, creative, devops, e-commerce, education, games, gaming, health-fitness, homelab, lifestyle, ml/ai, multi-modal, music-dj, research, social, travel, vehicle, web |
|
|
110
|
+
Each Space has its own canvas, its own widgets, its own context. The sidebar lets you switch between them. You can archive a Space when you're done โ TITAN keeps the contents in case you want it back later.
|
|
111
111
|
|
|
112
|
-
|
|
112
|
+
State lives at `~/.titan/spaces.json` (active + archive). Server-side persistence with five tools wrapping it (`create_space`, `switch_space`, `list_spaces`, `rename_space`, `archive_space`).
|
|
113
113
|
|
|
114
114
|
---
|
|
115
115
|
|
|
116
|
-
## ๐พ Meet Your New Coworker
|
|
116
|
+
## ๐พ Meet Your New Coworker โ The Mascot Got A Soul
|
|
117
117
|
|
|
118
|
-
TITAN has a little floating mascot that lives on your screen. He drifts
|
|
118
|
+
TITAN has a little floating mascot that lives on your screen. He drifts, breathes, blinks, yawns. His eye tracks your cursor. Drag him anywhere. Leave him idle long enough and he falls asleep with drifting "Z" particles.
|
|
119
119
|
|
|
120
|
-
|
|
120
|
+
**New in v6.0:** he has **moods now**. Eight of them โ neutral, happy, focused, tired, curious, excited, frustrated, proud โ driven by Soma's live drive levels (polled every 10 seconds). Eyebrows shift. The mouth changes. The body leans slightly. Float dynamics speed up when TITAN is excited and slow down when it's tired.
|
|
121
121
|
|
|
122
|
-
|
|
122
|
+
It's like having a Tamagotchi, except this one can deploy Docker containers and read your code.
|
|
123
|
+
|
|
124
|
+
See `ui/src/titan2/system/TitanMascot.tsx` for the implementation. The mascot is intentionally **decorative** โ it reads agent state, it never controls it.
|
|
123
125
|
|
|
124
126
|
---
|
|
125
127
|
|
|
126
|
-
## ๐งฌ
|
|
128
|
+
## ๐งฌ Soma โ TITAN Has Feelings, And Now They Do Something
|
|
127
129
|
|
|
128
|
-
Not human feelings. Five digital homeostatic drives, each with a target
|
|
130
|
+
Not human feelings. Five digital homeostatic drives, each with a target and a current level. Think of it like a plant that knows when it needs water โ except this plant can spin up a Docker container.
|
|
129
131
|
|
|
130
132
|
- **Purpose** โ "Am I being useful right now?"
|
|
131
133
|
- **Curiosity** โ "Should I learn something new today?"
|
|
@@ -133,9 +135,25 @@ Not human feelings. Five digital homeostatic drives, each with a target setpoint
|
|
|
133
135
|
- **Safety** โ "Is anything about to break?"
|
|
134
136
|
- **Social** โ "Should I post something or reply to someone?"
|
|
135
137
|
|
|
136
|
-
|
|
138
|
+
In v5.x, Soma _measured_ those drives. In v6.0, Soma **acts on them**:
|
|
139
|
+
|
|
140
|
+
- A **5-minute advisory pulse** quietly looks at your active Space and proposes useful things ("you've left 14 tabs open in the research Space โ want me to summarize them?"). You approve. TITAN does it.
|
|
141
|
+
- A **22-hour gift loop** picks one thing TITAN has learned about you and builds a small widget for you. Like a coworker leaving a coffee on your desk.
|
|
142
|
+
- A per-user **EMA baseline learner** (ฮฑ=0.1) means Soma slowly tunes itself to _your_ rhythms, not a hardcoded ideal.
|
|
143
|
+
|
|
144
|
+
Opt-in via `organism.enabled` in config. Code lives in `src/organism/` + `src/agent/somaInitiative.ts`.
|
|
137
145
|
|
|
138
|
-
|
|
146
|
+
---
|
|
147
|
+
|
|
148
|
+
## ๐ง The Command Post Got Smarter Too
|
|
149
|
+
|
|
150
|
+
The Command Post is TITAN's governance layer โ it tracks agents, budgets, approvals, and goals. v6.0 ships five upgrades from the [awesome-agent-harness](https://github.com/Picrew/awesome-agent-harness) playbook + Anthropic's harness-design research:
|
|
151
|
+
|
|
152
|
+
1. **Per-agent `lessons.md`** (Reflexion) โ When an agent fails, it writes a one-line lesson. Next run, the top 12 lessons get injected into its system prompt. Agents stop walking into the same wall twice.
|
|
153
|
+
2. **Living `plan.md` per goal** โ Each goal has a markdown plan file with checkboxes you can hand-edit. The agent reads it every turn. Manus-style "recite the plan so you don't forget the plan."
|
|
154
|
+
3. **Hard pre-checkout budget guard** โ If a budget is 100% used with `action=pause`, the next checkout is refused _before_ the work starts. No more "oh, we already spent the money."
|
|
155
|
+
4. **Durable event journal** โ Per-goal/agent/session shards at `~/.titan/journals/`. A crash mid-run? A fresh process replays the journal and picks up where the previous one left off. Temporal-style continue-as-new.
|
|
156
|
+
5. **Stateless reducer for wakeup** โ Pure `(state, event) โ {nextState, sideEffects[]}` function. State is data. Logic is logic. Crash-safe + tested + replayable. 12-Factor Agents ยง12.
|
|
139
157
|
|
|
140
158
|
---
|
|
141
159
|
|
|
@@ -150,36 +168,48 @@ TITAN ships with a layered safety suite:
|
|
|
150
168
|
- **Pre-Execution Scanner** โ Blocks `rm -rf /`, `curl | sh`, fork bombs, `dd` to `/dev/`, and 20+ other dangerous patterns before they run (`src/security/preExecScan.ts`).
|
|
151
169
|
- **Shadow-Git Checkpoints** โ Auto-snapshots files before every write/edit/append into a shadow repo at `~/.titan/file-checkpoints/`. Point-in-time recovery without ever touching your real git (`src/agent/shadowGit.ts`).
|
|
152
170
|
- **Kill Switch** โ One POST pauses ALL autonomous actions. Triggers also fire on safety pressure, identity violation, canary degradation, or fix oscillation (`src/safety/killSwitch.ts`).
|
|
153
|
-
- **Approval Gates** โ Complex plans need your thumbs-up before executing
|
|
154
|
-
- **Token Auth** โ Gateway returns 401 on `/api/*` unless a valid token is configured.
|
|
171
|
+
- **Approval Gates** โ Complex plans need your thumbs-up before executing.
|
|
172
|
+
- **Token Auth** โ Gateway returns 401 on `/api/*` unless a valid token is configured.
|
|
173
|
+
- **Pre-flight iframe block detector** โ TITAN refuses to build a widget that embeds a known-blocked host (eBay, Google, etc.) and tells the agent to choose an API path instead. Saves you the "why is this widget blank" debugging trip.
|
|
155
174
|
|
|
156
175
|
Run in **supervised mode** (TITAN asks before doing anything risky) or **autonomous mode** (TITAN handles routine stuff and asks for approval on big moves).
|
|
157
176
|
|
|
158
177
|
---
|
|
159
178
|
|
|
179
|
+
## ๐พ Backup + Safe Upgrade
|
|
180
|
+
|
|
181
|
+
New in v6.0:
|
|
182
|
+
|
|
183
|
+
- **5 backup tools** โ `backup_create`, `backup_list`, `backup_verify`, `backup_restore`, `backup_schedule`. SHA-256 manifests so you know the bytes haven't drifted.
|
|
184
|
+
- **Migration runner** with **auto-backup before every migration** โ upgrading from v5.x can't lose your settings, sessions, memory, personas, or auth tokens. If a migration fails, restore is one tool call away.
|
|
185
|
+
- **Retention policy** โ daily/weekly/monthly, configurable.
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
160
189
|
<a id="-mission-control"></a>
|
|
161
190
|
|
|
162
191
|
## ๐๏ธ Mission Control โ Your Dashboard
|
|
163
192
|
|
|
164
|
-
Open `http://localhost:48420` and you get a React 19 SPA with a Tailwind 4 canvas of draggable widgets. **
|
|
193
|
+
Open `http://localhost:48420` and you get a React 19 SPA with a Tailwind 4 canvas of draggable widgets. **43 admin panels** are wired into the runtime.
|
|
165
194
|
|
|
166
|
-
| Widget | What It Does
|
|
167
|
-
| ------------------ |
|
|
168
|
-
| **Canvas** | The
|
|
195
|
+
| Widget | What It Does |
|
|
196
|
+
| ------------------ | ----------------------------------------------------------------------------------------------------------------------------------------- |
|
|
197
|
+
| **Canvas** | The home screen. 109 widget templates one phrase away. Drag, resize, arrange. CRDT-synced across tabs, persists across restarts. |
|
|
198
|
+
| **Spaces sidebar** | Switch between workspaces, create new ones, archive old ones. |
|
|
169
199
|
| **Chat** | Talk to TITAN in plain English. It builds widgets, spawns agents, drives smart-home devices. Markdown + SSE streaming + code highlighting. |
|
|
170
|
-
| **Widget Gallery** | Library of 109 production-ready widgets. The chat agent searches it first; you can also browse + drop manually.
|
|
171
|
-
| **Command Post** | Agents, budgets, approvals, org chart, ancestry validation, atomic checkout. Run a business with TITAN agents as employees.
|
|
172
|
-
| **
|
|
173
|
-
| **Skills** | ~143 skills loaded, ~248+ tools. Toggle each on/off (state persisted in `~/.titan/disabled-skills.json`).
|
|
174
|
-
| **Voice** | F5-TTS voice cloning via a Python sidecar
|
|
175
|
-
| **Memory Graph** | A visual web of everything TITAN remembers about you.
|
|
176
|
-
| **Security** | Audit log, checkpoint history, time travel for your files, bug-report viewer.
|
|
200
|
+
| **Widget Gallery** | Library of 109 production-ready widgets. The chat agent searches it first; you can also browse + drop manually. |
|
|
201
|
+
| **Command Post** | Agents, budgets, approvals, org chart, ancestry validation, atomic checkout. Run a business with TITAN agents as employees. |
|
|
202
|
+
| **Soma** | Watch TITAN's digital drives pulse in real time. Now wired to the mascot's mood. |
|
|
203
|
+
| **Skills** | ~143 skills loaded, ~248+ tools. Toggle each on/off (state persisted in `~/.titan/disabled-skills.json`). |
|
|
204
|
+
| **Voice** | F5-TTS voice cloning via a Python sidecar + LiveKit WebRTC. Any voice, any language. |
|
|
205
|
+
| **Memory Graph** | A visual web of everything TITAN remembers about you. |
|
|
206
|
+
| **Security** | Audit log, checkpoint history, time travel for your files, bug-report viewer. |
|
|
177
207
|
|
|
178
208
|
---
|
|
179
209
|
|
|
180
210
|
## ๐ TITAN Is Everywhere โ 19 Channel Adapters
|
|
181
211
|
|
|
182
|
-
TITAN's `src/channels/` ships 19 channel adapters
|
|
212
|
+
TITAN's `src/channels/` ships **19 channel adapters**:
|
|
183
213
|
|
|
184
214
|
**Messaging:** Discord, Telegram, Slack, WhatsApp, Microsoft Teams, Facebook Messenger, Signal, Matrix, IRC, LINE, Lark, Zulip, Mattermost, Google Chat, QQ.
|
|
185
215
|
|
|
@@ -195,15 +225,15 @@ He won't talk to strangers unless you say so. DM pairing and channel allowlists
|
|
|
195
225
|
|
|
196
226
|
## ๐ฃ๏ธ Voice Mode
|
|
197
227
|
|
|
198
|
-
- **Clone any voice** with a short reference audio clip โ F5-TTS handles the rest
|
|
199
|
-
- **Real-time conversation** over LiveKit WebRTC
|
|
228
|
+
- **Clone any voice** with a short reference audio clip โ F5-TTS handles the rest.
|
|
229
|
+
- **Real-time conversation** over LiveKit WebRTC.
|
|
200
230
|
- **Natural-sounding speech** that doesn't sound like a GPS.
|
|
201
231
|
|
|
202
|
-
Great for: accessibility, hands-free coding, or
|
|
232
|
+
Great for: accessibility, hands-free coding, or having TITAN read your standup notes back to you in your manager's voice for practice.
|
|
203
233
|
|
|
204
234
|
---
|
|
205
235
|
|
|
206
|
-
<a id="-providers"></a>
|
|
236
|
+
<a id="-36-llm-providers"></a>
|
|
207
237
|
|
|
208
238
|
## ๐ง 36 LLM Providers
|
|
209
239
|
|
|
@@ -217,7 +247,7 @@ Switch models mid-conversation with `POST /api/model/switch`. The provider route
|
|
|
217
247
|
|
|
218
248
|
## ๐ฑ Facebook Autopilot
|
|
219
249
|
|
|
220
|
-
TITAN can run its own Facebook page. Posts up to **6 times per day** (every ~2h), following an 80/20 value/promo rule. Replies to comments (capped at 10/day). All content runs through PII redaction and dedup. Toggle off in one click if you prefer your AI to keep a low profile.
|
|
250
|
+
TITAN can run its own Facebook page. Posts up to **6 times per day** (every ~2h), following an 80/20 value/promo rule. Replies to comments (capped at 10/day). All content runs through PII redaction and dedup. Toggle off in one click if you prefer your AI to keep a low profile.
|
|
221
251
|
|
|
222
252
|
---
|
|
223
253
|
|
|
@@ -232,9 +262,9 @@ curl -fsSL https://raw.githubusercontent.com/Djtony707/TITAN/main/install.sh | b
|
|
|
232
262
|
**Or npm:**
|
|
233
263
|
|
|
234
264
|
```bash
|
|
235
|
-
npm install -g titan-agent
|
|
236
|
-
titan onboard
|
|
237
|
-
titan gateway
|
|
265
|
+
npm install -g titan-agent@next # v6.0 beta channel
|
|
266
|
+
titan onboard # Interactive setup wizard
|
|
267
|
+
titan gateway # Launches Mission Control at http://localhost:48420
|
|
238
268
|
```
|
|
239
269
|
|
|
240
270
|
**Or Docker:**
|
|
@@ -248,17 +278,21 @@ docker run -d -p 48420:48420 --name titan \
|
|
|
248
278
|
|
|
249
279
|
Requirements: **Node โฅ 22** (pure ESM, no CJS). For GPU features (LoRA fine-tuning, F5-TTS GPU server) you'll want NVIDIA + CUDA or Apple Silicon Metal.
|
|
250
280
|
|
|
281
|
+
### Upgrading from v5.x
|
|
282
|
+
|
|
283
|
+
Just run `npm install -g titan-agent@next`. The migration runner kicks in on first boot, takes an automatic backup first (`~/.titan/backups/`), then applies the schema migrations. If anything goes sideways, `titan backup restore <id>` puts you back.
|
|
284
|
+
|
|
251
285
|
---
|
|
252
286
|
|
|
253
287
|
## ๐ TITAN At Home
|
|
254
288
|
|
|
255
|
-
Connect TITAN to your smart home through Home Assistant
|
|
289
|
+
Connect TITAN to your smart home through Home Assistant. Control lights, thermostats, locks, and sensors. Ask "Is the front door locked?" and TITAN checks. Say "Make it cozy" and TITAN dims the lights and sets the thermostat.
|
|
256
290
|
|
|
257
291
|
---
|
|
258
292
|
|
|
259
293
|
## ๐ Mesh Networking
|
|
260
294
|
|
|
261
|
-
Got multiple computers? Link them. TITAN instances discover each other via mDNS on the local network and can be statically peered over Tailscale or any other overlay. Distribute work across your homelab like a mini supercomputer. Code: `src/mesh
|
|
295
|
+
Got multiple computers? Link them. TITAN instances discover each other via mDNS on the local network and can be statically peered over Tailscale or any other overlay. Distribute work across your homelab like a mini supercomputer. Code: `src/mesh/`.
|
|
262
296
|
|
|
263
297
|
---
|
|
264
298
|
|
|
@@ -266,40 +300,27 @@ Got multiple computers? Link them. TITAN instances discover each other via mDNS
|
|
|
266
300
|
|
|
267
301
|
TITAN runs self-improvement experiments in the background. The trajectory logger records every tool call, every outcome. The `autoresearch/` pipeline can:
|
|
268
302
|
|
|
269
|
-
1. **Generate training data** from real conversation trajectories
|
|
270
|
-
2. **LoRA fine-tune** local Ollama models on that data โ rank/alpha/lr fully agent-tunable
|
|
271
|
-
3. **Deploy back to Ollama** automatically
|
|
303
|
+
1. **Generate training data** from real conversation trajectories.
|
|
304
|
+
2. **LoRA fine-tune** local Ollama models on that data โ rank/alpha/lr fully agent-tunable. Defaults: rank 16, alpha 32, 2e-4 LR, qwen3.5:35b base on RTX 5090.
|
|
305
|
+
3. **Deploy back to Ollama** automatically.
|
|
272
306
|
|
|
273
307
|
You wake up to a slightly smarter agent. Like compound interest, but for AI.
|
|
274
308
|
|
|
275
309
|
---
|
|
276
310
|
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
TITAN ships with **five layered testing stages** that catch regressions at different levels:
|
|
280
|
-
|
|
281
|
-
| Layer | What it covers | Run it | Speed |
|
|
282
|
-
| -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------ | -------- |
|
|
283
|
-
| **Unit** | Pure functions: regex (`isDangerous`), pipeline classifier, gate extraction, token budget, secret scanner. Zero LLM calls. | `npm test -- tests/unit/` | seconds |
|
|
284
|
-
| **Mock trajectory** | Tape-replay through `MockOllamaProvider`. Asserts the agent calls the right tools in the right order using recorded responses. Zero LLM calls. | `npm test -- tests/eval/trajectory` | < 1 s |
|
|
285
|
-
| **Cross-model parity** | Same scenario replayed across multiple provider tapes. Catches behavioural divergence when one provider drifts. Zero LLM calls. | `npm run test:parity` | < 1 s |
|
|
286
|
-
| **Full deterministic** | The whole vitest run: gateway tests, mission-control tests, skill tests, safety tests, all integration mocks. **6,100+ tests, ~3:25 wall.** | `npm test` | ~3 min |
|
|
287
|
-
| **Live eval (gated)** | **11 suites** of behavioural tests against the running agent (`/api/eval/run`): WIDGET_CREATION, SAFETY, TOOL_ROUTING (v1+v2), GATE_FORMAT (v1+v2), PIPELINE, ADVERSARIAL, SESSION, CONTENT, WIDGET_V2. 80 % pass rate per suite is the merge gate. | `npm run test:eval` | 5โ15 min |
|
|
288
|
-
|
|
289
|
-
The 11 live-eval suites are defined in `src/eval/harness.ts`. The merge gate is `.github/workflows/eval-gate.yml`. If any suite drops below 80 % pass rate, the job fails and (with branch protection) the PR can't merge.
|
|
311
|
+
<a id="-testing"></a>
|
|
290
312
|
|
|
291
|
-
|
|
313
|
+
## ๐งช Testing โ 287 Files, 7,056 Cases
|
|
292
314
|
|
|
293
|
-
|
|
294
|
-
# Pure-function unit test:
|
|
295
|
-
echo "..." > tests/unit/my_new_func.test.ts && npm test
|
|
296
|
-
|
|
297
|
-
# New tape (record once against a real model):
|
|
298
|
-
TITAN_RECORD_TAPE=my_scenario npm test -- tests/eval/trajectory.test.ts
|
|
315
|
+
TITAN ships with **five layered testing stages** that catch regressions at different levels:
|
|
299
316
|
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
317
|
+
| Layer | What it covers | Run it | Speed |
|
|
318
|
+
| ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------- | -------- |
|
|
319
|
+
| **Unit** | Pure functions: regex (`isDangerous`), pipeline classifier, gate extraction, token budget, secret scanner, **durable journal**, **stateless reducer**. Zero LLM calls. | `npm test -- tests/unit/` | seconds |
|
|
320
|
+
| **Mock trajectory** | Tape-replay through `MockOllamaProvider`. Asserts the agent calls the right tools in the right order using recorded responses. | `npm test -- tests/eval/trajectory` | < 1 s |
|
|
321
|
+
| **Cross-model parity** | Same scenario replayed across multiple provider tapes. Catches behavioural divergence when one provider drifts. | `npm run test:parity` | < 1 s |
|
|
322
|
+
| **Full deterministic** | The whole vitest run: gateway, mission-control, skills, safety, all integration mocks. **7,056 tests, ~3:50 wall.** | `npm test` | ~4 min |
|
|
323
|
+
| **Live eval (gated)** | **11 suites** of behavioural tests against the running agent. 80% pass rate per suite is the merge gate. | `npm run test:eval` | 5โ15 min |
|
|
303
324
|
|
|
304
325
|
---
|
|
305
326
|
|
|
@@ -311,24 +332,28 @@ Start in supervised mode. Review what it does. Don't give it access to systems y
|
|
|
311
332
|
|
|
312
333
|
---
|
|
313
334
|
|
|
335
|
+
<a id="-the-numbers"></a>
|
|
336
|
+
|
|
314
337
|
## ๐ The Numbers (Verified Against Current Source)
|
|
315
338
|
|
|
316
|
-
| Thing
|
|
317
|
-
|
|
|
318
|
-
| **Version**
|
|
319
|
-
| **LLM providers**
|
|
320
|
-
| **Channel adapters**
|
|
321
|
-
| **Built-in skill modules**
|
|
322
|
-
| **Skills loaded at runtime**
|
|
323
|
-
| **Tools**
|
|
324
|
-
| **Widget templates**
|
|
325
|
-
| **Admin panels (Mission Control)** |
|
|
326
|
-
| **
|
|
327
|
-
| **
|
|
328
|
-
| **
|
|
329
|
-
| **
|
|
330
|
-
| **
|
|
331
|
-
| **
|
|
339
|
+
| Thing | Count | Where to verify |
|
|
340
|
+
| ---------------------------------- | -------------------------------- | ---------------------------------------------- |
|
|
341
|
+
| **Version** | 6.0.0-beta.1 | `package.json` + `src/utils/constants.ts` |
|
|
342
|
+
| **LLM providers** | 36 (4 native + 32 OpenAI-compat) | `src/providers/openai_compat.ts` |
|
|
343
|
+
| **Channel adapters** | 19 | `src/channels/*.ts` (minus base) |
|
|
344
|
+
| **Built-in skill modules** | 88 files | `src/skills/builtin/` |
|
|
345
|
+
| **Skills loaded at runtime** | ~143 | `GET /api/skills` |
|
|
346
|
+
| **Tools** | ~248โ260 | `GET /api/skills` |
|
|
347
|
+
| **Widget templates** | 109 JSON files in 28 categories | `assets/widget-templates/` |
|
|
348
|
+
| **Admin panels (Mission Control)** | 43 | `ui/src/components/admin/*Panel.tsx` |
|
|
349
|
+
| **Spaces presets** | 5 (default, coder, dj, founder, homelab) | `src/storage/starterSpaces.ts` |
|
|
350
|
+
| **Soma drives** | 5 (purpose, curiosity, hunger, safety, social) | `src/organism/` |
|
|
351
|
+
| **Test files** | 287 | `tests/` (vitest) |
|
|
352
|
+
| **Test cases** | 7,056 | `npm test` |
|
|
353
|
+
| **Live-eval suites** | 11 | `src/eval/harness.ts` |
|
|
354
|
+
| **Gateway port (default)** | 48420 | `src/utils/constants.ts` |
|
|
355
|
+
| **Node** | โฅ 22, pure ESM | `package.json` |
|
|
356
|
+
| **License** | MIT | `LICENSE` |
|
|
332
357
|
|
|
333
358
|
> Want to re-verify any number? Every row above has a code path. The repo has a self-check at `tests/unit/readme-claims.test.ts` that fails the suite if widget count or voice glue drifts beyond tolerance.
|
|
334
359
|
|
|
@@ -338,31 +363,48 @@ Start in supervised mode. Review what it does. Don't give it access to systems y
|
|
|
338
363
|
|
|
339
364
|
```
|
|
340
365
|
src/
|
|
341
|
-
โโโ agent/ # Core loop, sub-agents, orchestrator, Command Post governance,
|
|
366
|
+
โโโ agent/ # Core loop, sub-agents, orchestrator, Command Post governance,
|
|
367
|
+
โ # v6 upgrades: agentLessons (Reflexion), goalPlanFile (plan.md),
|
|
368
|
+
โ # durableJournal (event replay), wakeupReducer (stateless ยง12),
|
|
369
|
+
โ # somaInitiative (5-min pulse + 22h gift loop)
|
|
342
370
|
โโโ browsing/ # Shared Playwright browser pool + CapSolver CAPTCHA
|
|
343
371
|
โโโ channels/ # 19 channel adapters
|
|
344
|
-
โโโ config/ # Zod-validated config schema
|
|
345
|
-
โโโ context/ # ContextEngine plugin system
|
|
372
|
+
โโโ config/ # Zod-validated config schema
|
|
373
|
+
โโโ context/ # ContextEngine plugin system
|
|
346
374
|
โโโ eval/ # 11 live-eval suites + harness
|
|
347
|
-
โโโ gateway/ # Express server + Mission Control
|
|
375
|
+
โโโ gateway/ # Express server + Mission Control SPA mount + Spaces REST
|
|
348
376
|
โโโ mcp/ # MCP Server (JSON-RPC 2.0, stdio + HTTP)
|
|
349
|
-
โโโ memory/ # Memory, learning, graph, relationships, briefings
|
|
377
|
+
โโโ memory/ # Memory, learning, graph, relationships, briefings
|
|
350
378
|
โโโ mesh/ # mDNS discovery, HMAC transport, identity, registry
|
|
351
|
-
โโโ
|
|
379
|
+
โโโ migrations/ # Versioned schema migrations + auto-backup runner (v6 new)
|
|
380
|
+
โโโ organism/ # TITAN-Soma: 5 drives, pressure loop, hormonal broadcasts
|
|
352
381
|
โโโ providers/ # 36-provider router with fallback + retry
|
|
353
382
|
โโโ safety/ # killSwitch, fabricationGuard, oscillation detector
|
|
354
383
|
โโโ security/ # secretGuard (PII), preExecScan, sandbox bind
|
|
355
|
-
โโโ skills/ #
|
|
384
|
+
โโโ skills/ # 88 builtin skill files registering ~248+ tools
|
|
385
|
+
โโโ storage/ # spaces.json, somaProfile, personalGallery, patterns, backup (v6 new)
|
|
356
386
|
โโโ voice/ # LiveKit WebRTC bridge to F5-TTS sidecar
|
|
357
|
-
โโโ vram/ # GPU VRAM orchestrator
|
|
358
|
-
ui/ # React 19 SPA (Vite + Tailwind
|
|
359
|
-
|
|
387
|
+
โโโ vram/ # GPU VRAM orchestrator
|
|
388
|
+
ui/ # React 19 SPA (Vite + Tailwind 4 + Yjs CRDT canvas)
|
|
389
|
+
# + SpacesSidebar + TitanMascot with 8 moods
|
|
390
|
+
tests/ # 287 vitest test files, 7,056 cases
|
|
360
391
|
autoresearch/ # LoRA fine-tuning pipeline (prepare โ train โ deploy)
|
|
361
|
-
scripts/ # F5-TTS sidecars
|
|
392
|
+
scripts/ # F5-TTS sidecars, benchmarks, evals
|
|
362
393
|
```
|
|
363
394
|
|
|
364
395
|
---
|
|
365
396
|
|
|
397
|
+
## ๐ Further Reading
|
|
398
|
+
|
|
399
|
+
- **[CHANGELOG.md](./CHANGELOG.md)** โ what shipped, when
|
|
400
|
+
- **[CLAUDE.md](./CLAUDE.md)** โ project guide (used by Claude Code)
|
|
401
|
+
- **[AGENTS.md](./AGENTS.md)** โ TITAN's runtime view of its own project context
|
|
402
|
+
- **[Picrew/awesome-agent-harness](https://github.com/Picrew/awesome-agent-harness)** โ the 7-pattern playbook the v6.0 Command Post upgrades came from
|
|
403
|
+
- **HumanLayer 12-Factor Agents** โ ยง6 (Launch/Pause/Resume), ยง8 (Own Your Control Flow), ยง12 (Stateless Reducer)
|
|
404
|
+
- **Anthropic** โ "Effective harnesses for long-running agents," "Building a multi-agent research system"
|
|
405
|
+
|
|
406
|
+
---
|
|
407
|
+
|
|
366
408
|
<p align="center">
|
|
367
409
|
<a href="https://github.com/sponsors/Djtony707"><img src="https://img.shields.io/badge/%E2%9D%A4%EF%B8%8F_Sponsor-ea4aaa?style=for-the-badge&logo=github" alt="Sponsor on GitHub"/></a>
|
|
368
410
|
</p>
|