titan-agent 6.5.3 → 7.0.0
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 -47
- package/assets/agent-skills/NOTICE-ECC.md +39 -0
- package/assets/agent-skills/agent-introspection-debugging/SKILL.md +153 -0
- package/assets/agent-skills/continuous-agent-loop/SKILL.md +45 -0
- package/assets/agent-skills/continuous-learning/SKILL.md +131 -0
- package/assets/agent-skills/continuous-learning/config.json +18 -0
- package/assets/agent-skills/continuous-learning/evaluate-session.sh +69 -0
- package/assets/agent-skills/production-audit/SKILL.md +206 -0
- package/assets/agent-skills/recursive-decision-ledger/SKILL.md +79 -0
- package/assets/agent-skills/scientific-thinking-literature-review/SKILL.md +192 -0
- package/assets/agent-skills/scientific-thinking-scholar-evaluation/SKILL.md +160 -0
- package/assets/agent-skills/verification-loop/SKILL.md +126 -0
- package/dist/agent/agent.js +67 -26
- package/dist/agent/agent.js.map +1 -1
- package/dist/agent/agentLoop.js +6 -2
- package/dist/agent/agentLoop.js.map +1 -1
- package/dist/agent/autoModeClassifier.js +26 -2
- package/dist/agent/autoModeClassifier.js.map +1 -1
- package/dist/agent/goalDriver.js +2 -0
- package/dist/agent/goalDriver.js.map +1 -1
- package/dist/agent/goalSpec.js +229 -0
- package/dist/agent/goalSpec.js.map +1 -0
- package/dist/agent/heartbeat.js +130 -0
- package/dist/agent/heartbeat.js.map +1 -0
- package/dist/agent/missionDecompose.js +38 -0
- package/dist/agent/missionDecompose.js.map +1 -0
- package/dist/agent/muscleMemory.js +291 -0
- package/dist/agent/muscleMemory.js.map +1 -0
- package/dist/agent/observationWriter.js +56 -0
- package/dist/agent/observationWriter.js.map +1 -0
- package/dist/agent/promptSectionCaps.js +6 -0
- package/dist/agent/promptSectionCaps.js.map +1 -1
- package/dist/agent/reminders.js +101 -0
- package/dist/agent/reminders.js.map +1 -0
- package/dist/agent/systemWidgets.js +41 -0
- package/dist/agent/systemWidgets.js.map +1 -0
- package/dist/agent/toolRunner.js +24 -0
- package/dist/agent/toolRunner.js.map +1 -1
- package/dist/agent/toolSearch.js +3 -0
- package/dist/agent/toolSearch.js.map +1 -1
- package/dist/channels/messenger.js +39 -0
- package/dist/channels/messenger.js.map +1 -1
- package/dist/config/config.js +7 -0
- package/dist/config/config.js.map +1 -1
- package/dist/config/schema.js +18 -1
- package/dist/config/schema.js.map +1 -1
- package/dist/eval/harness.js +13 -3
- package/dist/eval/harness.js.map +1 -1
- package/dist/gateway/onboarding.js +91 -0
- package/dist/gateway/onboarding.js.map +1 -0
- package/dist/gateway/routes/skills.js +2 -1
- package/dist/gateway/routes/skills.js.map +1 -1
- package/dist/gateway/routes/studioRouter.js +88 -0
- package/dist/gateway/routes/studioRouter.js.map +1 -0
- package/dist/gateway/routes/watchRouter.js +4 -4
- package/dist/gateway/routes/watchRouter.js.map +1 -1
- package/dist/gateway/server.js +251 -43
- package/dist/gateway/server.js.map +1 -1
- package/dist/memory/taxonomy.js +117 -0
- package/dist/memory/taxonomy.js.map +1 -0
- package/dist/providers/modelCapabilities.js +13 -0
- package/dist/providers/modelCapabilities.js.map +1 -1
- package/dist/providers/ollama.js +8 -2
- package/dist/providers/ollama.js.map +1 -1
- package/dist/providers/openai.js +1 -1
- package/dist/providers/openai.js.map +1 -1
- package/dist/providers/openai_compat.js +38 -2
- package/dist/providers/openai_compat.js.map +1 -1
- package/dist/providers/router.js +14 -0
- package/dist/providers/router.js.map +1 -1
- package/dist/recipes/runner.js +8 -1
- package/dist/recipes/runner.js.map +1 -1
- package/dist/recipes/store.js +2 -1
- package/dist/recipes/store.js.map +1 -1
- package/dist/skills/builtin/codebase_explore.js +214 -0
- package/dist/skills/builtin/codebase_explore.js.map +1 -0
- package/dist/skills/builtin/config_audit.js +160 -0
- package/dist/skills/builtin/config_audit.js.map +1 -0
- package/dist/skills/builtin/delegate_agent.js +107 -0
- package/dist/skills/builtin/delegate_agent.js.map +1 -0
- package/dist/skills/builtin/memory_map.js +38 -0
- package/dist/skills/builtin/memory_map.js.map +1 -0
- package/dist/skills/builtin/reminders.js +67 -0
- package/dist/skills/builtin/reminders.js.map +1 -0
- package/dist/skills/builtin/spec.js +139 -0
- package/dist/skills/builtin/spec.js.map +1 -0
- package/dist/skills/builtin/widget_gallery.js +12 -5
- package/dist/skills/builtin/widget_gallery.js.map +1 -1
- package/dist/skills/frontmatterLoader.js +7 -1
- package/dist/skills/frontmatterLoader.js.map +1 -1
- package/dist/skills/registry.js +12 -0
- package/dist/skills/registry.js.map +1 -1
- package/dist/substrate/traceBus.js.map +1 -1
- package/dist/telemetry/traceStore.js +127 -0
- package/dist/telemetry/traceStore.js.map +1 -0
- package/dist/utils/constants.js +1 -1
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/contrast.js +69 -0
- package/dist/utils/contrast.js.map +1 -0
- package/dist/watch/sessionContext.js +14 -0
- package/dist/watch/sessionContext.js.map +1 -0
- package/dist/watch/sessionTrace.js +51 -0
- package/dist/watch/sessionTrace.js.map +1 -0
- package/dist/watch/studioBuffer.js +53 -0
- package/dist/watch/studioBuffer.js.map +1 -0
- package/package.json +4 -3
- package/ui/dist/assets/AboutYouMemory-CZKEOd_O.js +11 -0
- package/ui/dist/assets/AuditPanel-Bu71N5Er.js +1 -0
- package/ui/dist/assets/{AutonomyPanel-CmaXJV8d.js → AutonomyPanel-DB-39dX4.js} +2 -2
- package/ui/dist/assets/{AutopilotPanel-CbohPtXW.js → AutopilotPanel-Cj8oKxWv.js} +1 -1
- package/ui/dist/assets/{AutoresearchPanel-DCwiQ2v2.js → AutoresearchPanel-3s8pjm6Z.js} +2 -2
- package/ui/dist/assets/BackupPanel-EUQJMJE7.js +1 -0
- package/ui/dist/assets/{BrowserPanel-D6UaSxap.js → BrowserPanel-Beo4F5Ar.js} +2 -2
- package/ui/dist/assets/Button-MdXmb4_n.js +1 -0
- package/ui/dist/assets/CPActivity-B1Se9VVc.js +1 -0
- package/ui/dist/assets/CPAgentDetail-BYji6tT8.js +1 -0
- package/ui/dist/assets/CPAgents-BSUKucTe.js +1 -0
- package/ui/dist/assets/CPApprovals-B4v0em6e.js +1 -0
- package/ui/dist/assets/CPCosts-9ikh61Kv.js +1 -0
- package/ui/dist/assets/CPDashboard-sOok2T5v.js +1 -0
- package/ui/dist/assets/{CPFiles-BO73EZwJ.js → CPFiles-DB2nY5JE.js} +1 -1
- package/ui/dist/assets/CPGoals-8Z1yOY8e.js +1 -0
- package/ui/dist/assets/CPInbox-Cq6-UY8F.js +11 -0
- package/ui/dist/assets/CPIssueDetail-NAGfmJg8.js +1 -0
- package/ui/dist/assets/CPIssues-BzX6Rckx.js +1 -0
- package/ui/dist/assets/CPLayout-BcRM6QSg.js +2 -0
- package/ui/dist/assets/CPOrg-B7DQ4UQP.js +1 -0
- package/ui/dist/assets/CPRuns-D-cpPw_M.js +1 -0
- package/ui/dist/assets/{CPSocial-Qw5rKy_4.js → CPSocial-DshtmcK0.js} +3 -3
- package/ui/dist/assets/CPVoice-DfXRnQVU.js +1 -0
- package/ui/dist/assets/{ChannelsPanel-DS21E-Iz.js → ChannelsPanel-BnaTOeyf.js} +1 -1
- package/ui/dist/assets/CheckpointsPanel-C62naE4U.js +1 -0
- package/ui/dist/assets/CommandPostHub-B_L1CAss.js +24 -0
- package/ui/dist/assets/ConfirmDialog-VErHWAbo.js +1 -0
- package/ui/dist/assets/CronPanel-BwMrrZ5d.js +1 -0
- package/ui/dist/assets/{DataTable-PnhPeDBG.js → DataTable-BCqSUuN7.js} +1 -1
- package/ui/dist/assets/{DreamPanel-DIrtlk2K.js → DreamPanel-BNAcCLBB.js} +2 -2
- package/ui/dist/assets/EmptyState-D9kQf1PX.js +1 -0
- package/ui/dist/assets/{EvalHarnessPanel-uYb_ZEQG.js → EvalHarnessPanel-BaMLdBNm.js} +2 -2
- package/ui/dist/assets/EvalPanel-CW-SSjtg.js +1 -0
- package/ui/dist/assets/{FileViewer-CVO3TRs3.js → FileViewer-BL00nsd7.js} +1 -1
- package/ui/dist/assets/FilesPanel-CeC6YUSd.js +16 -0
- package/ui/dist/assets/FleetPanel-EyWF7l3W.js +1 -0
- package/ui/dist/assets/{HomelabPanel-BZvN4LPM.js → HomelabPanel-BRfKRYe7.js} +2 -2
- package/ui/dist/assets/InfraView-Jmqhg_Yc.js +2 -0
- package/ui/dist/assets/{InlineEditableField-mBzpbcLB.js → InlineEditableField-DgMrLDj1.js} +1 -1
- package/ui/dist/assets/Input-CBTwa_Iw.js +1 -0
- package/ui/dist/assets/IntegrationsPanel-DQL-7Ec6.js +1 -0
- package/ui/dist/assets/IntelligenceView-DxD78qfP.js +2 -0
- package/ui/dist/assets/LearningPanel-C_JzSbJU.js +1 -0
- package/ui/dist/assets/LiveStudio-Db5yeaWo.js +7 -0
- package/ui/dist/assets/{LogsPanel-DbP3Mwnr.js → LogsPanel-CpinKwaZ.js} +1 -1
- package/ui/dist/assets/McpPanel-D-MqN_f-.js +1 -0
- package/ui/dist/assets/MemoryGraphPanel-BnD5jRqf.js +1 -0
- package/ui/dist/assets/MemoryTaxonomyPanel-BBI202dd.js +6 -0
- package/ui/dist/assets/MemoryWikiPanel-Dn3XZHL0.js +6 -0
- package/ui/dist/assets/{MeshPanel-Bf-4brXL.js → MeshPanel-C-mRJpr0.js} +1 -1
- package/ui/dist/assets/{MissionCanvas-CJyhnauG.js → MissionCanvas-CbZW83Ch.js} +1 -1
- package/ui/dist/assets/{MissionChat-C2Nto3zM.js → MissionChat-Bs75jPAD.js} +1 -1
- package/ui/dist/assets/{MissionLibrary-RXyBHsLL.js → MissionLibrary-BxQ6SxPe.js} +1 -1
- package/ui/dist/assets/MissionStart-CBuBPasl.js +1 -0
- package/ui/dist/assets/Modal-ybPGvlQs.js +9 -0
- package/ui/dist/assets/{NvidiaPanel-4DlcQlyl.js → NvidiaPanel-DdG13OX4.js} +1 -1
- package/ui/dist/assets/OrganismPanel-xZWUJKyr.js +1 -0
- package/ui/dist/assets/OverviewPanel-B45ZYhJV.js +1 -0
- package/ui/dist/assets/{PageHeader-bnc85wQN.js → PageHeader-DdrbS1aq.js} +1 -1
- package/ui/dist/assets/PersonaProfilesPanel-CKER-EU5.js +8 -0
- package/ui/dist/assets/{PersonasPanel-dR8VppcD.js → PersonasPanel-CMMQ3nh3.js} +1 -1
- package/ui/dist/assets/{PhoneDeskPanel-CdVOY7H9.js → PhoneDeskPanel-Bw_Y-cVE.js} +2 -2
- package/ui/dist/assets/RecipesPanel-DzMcxpJJ.js +1 -0
- package/ui/dist/assets/SecurityPanel-BCq3Fzbr.js +1 -0
- package/ui/dist/assets/SelfImprovePanel-YE3hT8jK.js +1 -0
- package/ui/dist/assets/SelfProposalsPanel-DXuqBM6p.js +1 -0
- package/ui/dist/assets/SessionsPanel-DORz5goR.js +1 -0
- package/ui/dist/assets/SessionsTab-qYHDOuC8.js +1 -0
- package/ui/dist/assets/SettingsPanel-BbwPu1i7.js +1 -0
- package/ui/dist/assets/SettingsView-zgqkDDBJ.js +2 -0
- package/ui/dist/assets/{SkeletonLoader-Cax7YTqW.js → SkeletonLoader-r6OGXaU9.js} +1 -1
- package/ui/dist/assets/SkillsPanel-BjEOBMRo.js +11 -0
- package/ui/dist/assets/{SomaView-eG3wI4S1.js → SomaView-DLzApZVW.js} +2 -2
- package/ui/dist/assets/{StatCard-Djr487DV.js → StatCard-DLq8aBps.js} +1 -1
- package/ui/dist/assets/{StatusBadge-JpCoA33_.js → StatusBadge-BqlvIbdj.js} +1 -1
- package/ui/dist/assets/{Tabs-DJHu-roP.js → Tabs-DdUThlp1.js} +1 -1
- package/ui/dist/assets/TeamsPanel-uIIKoU7I.js +1 -0
- package/ui/dist/assets/{TelemetryPanel-D4PXsd-X.js → TelemetryPanel-dVr3yQQr.js} +1 -1
- package/ui/dist/assets/TitanCanvas-xHAJqwG2.js +945 -0
- package/ui/dist/assets/ToolsView-CG1mZdiy.js +2 -0
- package/ui/dist/assets/{Tooltip-B1LhTXJ8.js → Tooltip-C2tXJcrN.js} +1 -1
- package/ui/dist/assets/TraceViewer-BIMD_Osr.js +1 -0
- package/ui/dist/assets/TracesPanel-nMUiyMj5.js +1 -0
- package/ui/dist/assets/TrainingPanel-CT5R4HWm.js +1 -0
- package/ui/dist/assets/{VoiceOverlay-B_ss7Zg_.js → VoiceOverlay-Br4QnCtw.js} +3 -3
- package/ui/dist/assets/VramPanel-CdnJYytg.js +1 -0
- package/ui/dist/assets/WatchView-TNU6Ns1Q.js +13 -0
- package/ui/dist/assets/WorkTab-wTlX_UKP.js +1 -0
- package/ui/dist/assets/WorkflowBuilderPanel-CDpVt5ux.js +6 -0
- package/ui/dist/assets/WorkflowsPanel-zsFqsLdn.js +11 -0
- package/ui/dist/assets/{archive-gZFnGd5A.js → archive-Bh689DNg.js} +1 -1
- package/ui/dist/assets/{arrow-left-qA0Qer2h.js → arrow-left-WkVYLm80.js} +1 -1
- package/ui/dist/assets/{book-open-DIxdPqmD.js → book-open-ohEXgUsS.js} +1 -1
- package/ui/dist/assets/{bot-CvIF1uHi.js → bot-DvEcyQcD.js} +1 -1
- package/ui/dist/assets/{chart-column-BQiM-Td4.js → chart-column-w3goFd5f.js} +1 -1
- package/ui/dist/assets/{check-DgyDEFtq.js → check-CuRYh4Zh.js} +1 -1
- package/ui/dist/assets/{chevron-right-CQ1NTOtd.js → chevron-right-DbLSHmff.js} +1 -1
- package/ui/dist/assets/{circle-check-big-CAFcaPPH.js → circle-check-big-Bkba568b.js} +1 -1
- package/ui/dist/assets/{circle-stop-C-8xGv0n.js → circle-stop-Bx2ohEg8.js} +1 -1
- package/ui/dist/assets/{clipboard-list-9DdqBj1F.js → clipboard-list-Dj9tORnu.js} +1 -1
- package/ui/dist/assets/{clock-CF9BCIpL.js → clock-JyQAYy6X.js} +1 -1
- package/ui/dist/assets/{dollar-sign-LDRZBae6.js → dollar-sign-XxwPAA2a.js} +1 -1
- package/ui/dist/assets/{download-BBNXvBO0.js → download-D1izVEOL.js} +1 -1
- package/ui/dist/assets/{external-link-D_ji4Bec.js → external-link-DZ_rZsIt.js} +1 -1
- package/ui/dist/assets/{file-text-DrdTDEYp.js → file-text-Cfawu8Bs.js} +1 -1
- package/ui/dist/assets/{flask-conical-BGn5PgFX.js → flask-conical-Ql8QxhgY.js} +1 -1
- package/ui/dist/assets/{folder-BeZZUGnK.js → folder-DAdIw-Pb.js} +1 -1
- package/ui/dist/assets/{funnel-CAJgGO5M.js → funnel-FycfZcXo.js} +1 -1
- package/ui/dist/assets/{git-branch-BcXabeOs.js → git-branch-C2qrhGGu.js} +1 -1
- package/ui/dist/assets/index-Cml2x9pA.js +507 -0
- package/ui/dist/assets/index-yWybhcfI.css +1 -0
- package/ui/dist/assets/{layers-DxYDmPA_.js → layers-yzjtGlHB.js} +1 -1
- package/ui/dist/assets/{legacy-dHWI7k8P.js → legacy-D21WSMF1.js} +1 -1
- package/ui/dist/assets/{lightbulb-B0Du4SM4.js → lightbulb-BZJNK69S.js} +1 -1
- package/ui/dist/assets/{link-CUpaumqr.js → link-CnFkBkaY.js} +1 -1
- package/ui/dist/assets/{list-todo-CDDhmPQB.js → list-todo-BlgfQHup.js} +1 -1
- package/ui/dist/assets/{message-square-D5VWlv-Q.js → message-square-CRsG9u6_.js} +1 -1
- package/ui/dist/assets/{mic-Ddcc6Ann.js → mic-B32RHc7Y.js} +1 -1
- package/ui/dist/assets/{missions-2zox16Tc.js → missions-1iw8Z2_0.js} +1 -1
- package/ui/dist/assets/{network-DaJ7ugwX.js → network-C9RXQGrV.js} +1 -1
- package/ui/dist/assets/{pause-BukaK6rs.js → pause-BT1Bc2q3.js} +1 -1
- package/ui/dist/assets/{pencil-D_YwQBeg.js → pencil-BK5IU6o0.js} +1 -1
- package/ui/dist/assets/{play-BjdwtYMk.js → play-Cl1nC_gc.js} +1 -1
- package/ui/dist/assets/{plug-yISDdeW2.js → plug-DvcpOalj.js} +1 -1
- package/ui/dist/assets/{plus-BSjTdepW.js → plus-Dpo1qfrl.js} +1 -1
- package/ui/dist/assets/{radio-B7kX_yWE.js → radio-C5c9IyqX.js} +1 -1
- package/ui/dist/assets/{refresh-cw-CwDpzXUn.js → refresh-cw-C-iZkzuS.js} +1 -1
- package/ui/dist/assets/{rotate-ccw-7SQDTI0_.js → rotate-ccw-qzrB3SNw.js} +1 -1
- package/ui/dist/assets/{save-CjTPAQM0.js → save-DwR9wQVu.js} +1 -1
- package/ui/dist/assets/{search-BP7VlNxX.js → search-D10l0m3-.js} +1 -1
- package/ui/dist/assets/{send-C2XDuRPf.js → send-DtXGsaFW.js} +1 -1
- package/ui/dist/assets/{server-BE8W-AT4.js → server-BzisF3LL.js} +1 -1
- package/ui/dist/assets/settings-Dbwd1_-c.js +6 -0
- package/ui/dist/assets/{shield-check-s7la2J2K.js → shield-check-CXlDJyAW.js} +1 -1
- package/ui/dist/assets/square-BBC-JKzY.js +11 -0
- package/ui/dist/assets/{terminal-B8IK4WsO.js → terminal-DaBIlWEM.js} +1 -1
- package/ui/dist/assets/{test-tube-Xfn9DJeg.js → test-tube-CDATRD5t.js} +1 -1
- package/ui/dist/assets/{toggle-right-CHpzOIlj.js → toggle-right-DTmrC5RD.js} +1 -1
- package/ui/dist/assets/{trash-2-B1C85ePK.js → trash-2-CTeyjxD_.js} +1 -1
- package/ui/dist/assets/{trending-up-DDGHQZY1.js → trending-up-CXPRjRV4.js} +1 -1
- package/ui/dist/assets/{trophy-D0LhJSPA.js → trophy-DbVdXRtU.js} +1 -1
- package/ui/dist/assets/{volume-2-DMaE91b5.js → volume-2-DYDBmm3M.js} +1 -1
- package/ui/dist/assets/{wifi-off-DR9h8HGA.js → wifi-off-BBuIGbiP.js} +1 -1
- package/ui/dist/assets/zoom-out-D47_pRAO.js +16 -0
- package/ui/dist/index.html +2 -2
- package/ui/dist/sw.js +1 -1
- package/ui/dist/assets/AuditPanel-BaftX5MP.js +0 -1
- package/ui/dist/assets/BackupPanel-DAy9G7Wt.js +0 -1
- package/ui/dist/assets/CPActivity-BYDsUoMn.js +0 -1
- package/ui/dist/assets/CPAgentDetail-Bb9-GAJY.js +0 -1
- package/ui/dist/assets/CPAgents-BTZuGnki.js +0 -1
- package/ui/dist/assets/CPApprovals-BME2ARkO.js +0 -1
- package/ui/dist/assets/CPCosts-mOXwWq0i.js +0 -1
- package/ui/dist/assets/CPDashboard-CTlKGXXQ.js +0 -1
- package/ui/dist/assets/CPGoals-BNWhNP14.js +0 -1
- package/ui/dist/assets/CPInbox-ybe4r8LW.js +0 -16
- package/ui/dist/assets/CPIssueDetail-DaMMGbjw.js +0 -1
- package/ui/dist/assets/CPIssues-BgpQOISw.js +0 -1
- package/ui/dist/assets/CPLayout-bgErauTx.js +0 -2
- package/ui/dist/assets/CPOrg-C8l5SIWJ.js +0 -8
- package/ui/dist/assets/CPRuns-DB8S7loF.js +0 -1
- package/ui/dist/assets/CPVoice-DfwHPewA.js +0 -1
- package/ui/dist/assets/CheckpointsPanel-9-l_8GdG.js +0 -1
- package/ui/dist/assets/CommandPostHub-z55Yrhj1.js +0 -24
- package/ui/dist/assets/CronPanel-kEZK3gpx.js +0 -1
- package/ui/dist/assets/EmptyState-CfvU7SdB.js +0 -1
- package/ui/dist/assets/EvalPanel-CDG-njyj.js +0 -1
- package/ui/dist/assets/FilesPanel-CaLPog2e.js +0 -16
- package/ui/dist/assets/FleetPanel-BtlaV6pH.js +0 -1
- package/ui/dist/assets/InfraView-C0zEuFrR.js +0 -2
- package/ui/dist/assets/Input-CbrMbLgn.js +0 -1
- package/ui/dist/assets/IntegrationsPanel-B4TyR6jC.js +0 -1
- package/ui/dist/assets/IntelligenceView-DZ4HxYZ3.js +0 -2
- package/ui/dist/assets/LearningPanel-B4RIm_iQ.js +0 -1
- package/ui/dist/assets/McpPanel-BmNUFozc.js +0 -1
- package/ui/dist/assets/MemoryGraphPanel-JPurHV0L.js +0 -16
- package/ui/dist/assets/MemoryWikiPanel-DdvCAZHa.js +0 -6
- package/ui/dist/assets/MissionStart-wUkcEP0T.js +0 -1
- package/ui/dist/assets/Modal-BmS7C6FN.js +0 -1
- package/ui/dist/assets/OrganismPanel-C2LYDPrn.js +0 -1
- package/ui/dist/assets/OverviewPanel-DK8uuq4D.js +0 -1
- package/ui/dist/assets/PersonaProfilesPanel-DGtokXUu.js +0 -8
- package/ui/dist/assets/RecipesPanel-D3Zs2wxr.js +0 -1
- package/ui/dist/assets/SecurityPanel-BMERf796.js +0 -1
- package/ui/dist/assets/SelfImprovePanel-BxqWHXCU.js +0 -1
- package/ui/dist/assets/SelfProposalsPanel-CuC94vdx.js +0 -2
- package/ui/dist/assets/SessionsPanel-CQ8qvzp7.js +0 -1
- package/ui/dist/assets/SessionsTab-B3eHV3jf.js +0 -1
- package/ui/dist/assets/SettingsPanel-Cumls7N2.js +0 -1
- package/ui/dist/assets/SettingsView-BtA67pol.js +0 -2
- package/ui/dist/assets/SkillsPanel-CA415CT8.js +0 -11
- package/ui/dist/assets/TeamsPanel-C_Vu6vnY.js +0 -1
- package/ui/dist/assets/TitanCanvas-TuYZSZO7.js +0 -1117
- package/ui/dist/assets/ToolsView-BvTN6vFn.js +0 -2
- package/ui/dist/assets/TraceViewer-Bh8Jo3Dr.js +0 -1
- package/ui/dist/assets/TrainingPanel-Dmbd1rJ-.js +0 -1
- package/ui/dist/assets/VramPanel-CPICbZ2s.js +0 -1
- package/ui/dist/assets/WatchView-BCgLVfiV.js +0 -13
- package/ui/dist/assets/WorkTab-iptofXO9.js +0 -1
- package/ui/dist/assets/WorkflowsPanel-3RYkFHyf.js +0 -11
- package/ui/dist/assets/chevron-up-UyfdjRp6.js +0 -6
- package/ui/dist/assets/index-CUgepw5Q.js +0 -337
- package/ui/dist/assets/index-Dm6zcSTS.css +0 -1
- package/ui/dist/assets/proxy-CWET5FFX.js +0 -9
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: continuous-learning
|
|
3
|
+
description: "[DEPRECATED - use continuous-learning-v2] Legacy v1 stop-hook skill extractor. v2 is a strict superset with instinct-based, project-scoped, hook-reliable learning. Do not invoke v1; route continuous learning, session learning, and pattern extraction requests to continuous-learning-v2."
|
|
4
|
+
origin: ECC
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Continuous Learning Skill - DEPRECATED
|
|
8
|
+
|
|
9
|
+
> **DEPRECATED 2026-04-28.** Use `continuous-learning-v2` instead. v2 is a strict superset: stop-hook observation becomes PreToolUse/PostToolUse observation, full skills become atomic instincts with confidence scoring, and global-only storage becomes project-scoped plus global promotion.
|
|
10
|
+
>
|
|
11
|
+
> This file is kept for archival reference and backward compatibility with existing installs.
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Original v1 Documentation (archival)
|
|
16
|
+
|
|
17
|
+
Automatically evaluates TITAN sessions on end to extract reusable patterns that can be saved as learned skills.
|
|
18
|
+
|
|
19
|
+
## When to Activate
|
|
20
|
+
|
|
21
|
+
- Setting up automatic pattern extraction from TITAN sessions
|
|
22
|
+
- Configuring the Stop hook for session evaluation
|
|
23
|
+
- Reviewing or curating learned skills in `~/.claude/skills/learned/`
|
|
24
|
+
- Adjusting extraction thresholds or pattern categories
|
|
25
|
+
- Comparing v1 (this) vs v2 (instinct-based) approaches
|
|
26
|
+
|
|
27
|
+
## Status
|
|
28
|
+
|
|
29
|
+
This v1 skill is still supported, but `continuous-learning-v2` is the preferred path for new installs. Keep v1 when you explicitly want the simpler Stop-hook extraction flow or need compatibility with older learned-skill workflows.
|
|
30
|
+
|
|
31
|
+
## How It Works
|
|
32
|
+
|
|
33
|
+
This skill runs as a **Stop hook** at the end of each session:
|
|
34
|
+
|
|
35
|
+
1. **Session Evaluation**: Checks if session has enough messages (default: 10+)
|
|
36
|
+
2. **Pattern Detection**: Identifies extractable patterns from the session
|
|
37
|
+
3. **Skill Extraction**: Saves useful patterns to `~/.claude/skills/learned/`
|
|
38
|
+
|
|
39
|
+
## Configuration
|
|
40
|
+
|
|
41
|
+
Edit `config.json` to customize:
|
|
42
|
+
|
|
43
|
+
```json
|
|
44
|
+
{
|
|
45
|
+
"min_session_length": 10,
|
|
46
|
+
"extraction_threshold": "medium",
|
|
47
|
+
"auto_approve": false,
|
|
48
|
+
"learned_skills_path": "~/.claude/skills/learned/",
|
|
49
|
+
"patterns_to_detect": [
|
|
50
|
+
"error_resolution",
|
|
51
|
+
"user_corrections",
|
|
52
|
+
"workarounds",
|
|
53
|
+
"debugging_techniques",
|
|
54
|
+
"project_specific"
|
|
55
|
+
],
|
|
56
|
+
"ignore_patterns": [
|
|
57
|
+
"simple_typos",
|
|
58
|
+
"one_time_fixes",
|
|
59
|
+
"external_api_issues"
|
|
60
|
+
]
|
|
61
|
+
}
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## Pattern Types
|
|
65
|
+
|
|
66
|
+
| Pattern | Description |
|
|
67
|
+
|---------|-------------|
|
|
68
|
+
| `error_resolution` | How specific errors were resolved |
|
|
69
|
+
| `user_corrections` | Patterns from user corrections |
|
|
70
|
+
| `workarounds` | Solutions to framework/library quirks |
|
|
71
|
+
| `debugging_techniques` | Effective debugging approaches |
|
|
72
|
+
| `project_specific` | Project-specific conventions |
|
|
73
|
+
|
|
74
|
+
## Hook Setup
|
|
75
|
+
|
|
76
|
+
Add to your `~/.claude/settings.json`:
|
|
77
|
+
|
|
78
|
+
```json
|
|
79
|
+
{
|
|
80
|
+
"hooks": {
|
|
81
|
+
"Stop": [{
|
|
82
|
+
"matcher": "*",
|
|
83
|
+
"hooks": [{
|
|
84
|
+
"type": "command",
|
|
85
|
+
"command": "~/.claude/skills/continuous-learning/evaluate-session.sh"
|
|
86
|
+
}]
|
|
87
|
+
}]
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
## Why Stop Hook?
|
|
93
|
+
|
|
94
|
+
- **Lightweight**: Runs once at session end
|
|
95
|
+
- **Non-blocking**: Doesn't add latency to every message
|
|
96
|
+
- **Complete context**: Has access to full session transcript
|
|
97
|
+
|
|
98
|
+
## Related
|
|
99
|
+
|
|
100
|
+
- [The Longform Guide](https://x.com/affaanmustafa/status/2014040193557471352) - Section on continuous learning
|
|
101
|
+
- `/learn` command - Manual pattern extraction mid-session
|
|
102
|
+
|
|
103
|
+
---
|
|
104
|
+
|
|
105
|
+
## Comparison Notes (Research: Jan 2025)
|
|
106
|
+
|
|
107
|
+
### vs Homunculus
|
|
108
|
+
|
|
109
|
+
Homunculus v2 takes a more sophisticated approach:
|
|
110
|
+
|
|
111
|
+
| Feature | Our Approach | Homunculus v2 |
|
|
112
|
+
|---------|--------------|---------------|
|
|
113
|
+
| Observation | Stop hook (end of session) | PreToolUse/PostToolUse hooks (100% reliable) |
|
|
114
|
+
| Analysis | Main context | Background agent (Haiku) |
|
|
115
|
+
| Granularity | Full skills | Atomic "instincts" |
|
|
116
|
+
| Confidence | None | 0.3-0.9 weighted |
|
|
117
|
+
| Evolution | Direct to skill | Instincts → cluster → skill/command/agent |
|
|
118
|
+
| Sharing | None | Export/import instincts |
|
|
119
|
+
|
|
120
|
+
**Key insight from homunculus:**
|
|
121
|
+
> "v1 relied on skills to observe. Skills are probabilistic—they fire ~50-80% of the time. v2 uses hooks for observation (100% reliable) and instincts as the atomic unit of learned behavior."
|
|
122
|
+
|
|
123
|
+
### Potential v2 Enhancements
|
|
124
|
+
|
|
125
|
+
1. **Instinct-based learning** - Smaller, atomic behaviors with confidence scoring
|
|
126
|
+
2. **Background observer** - Haiku agent analyzing in parallel
|
|
127
|
+
3. **Confidence decay** - Instincts lose confidence if contradicted
|
|
128
|
+
4. **Domain tagging** - code-style, testing, git, debugging, etc.
|
|
129
|
+
5. **Evolution path** - Cluster related instincts into skills/commands
|
|
130
|
+
|
|
131
|
+
See: `docs/continuous-learning-v2-spec.md` for full spec.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"min_session_length": 10,
|
|
3
|
+
"extraction_threshold": "medium",
|
|
4
|
+
"auto_approve": false,
|
|
5
|
+
"learned_skills_path": "~/.claude/skills/learned/",
|
|
6
|
+
"patterns_to_detect": [
|
|
7
|
+
"error_resolution",
|
|
8
|
+
"user_corrections",
|
|
9
|
+
"workarounds",
|
|
10
|
+
"debugging_techniques",
|
|
11
|
+
"project_specific"
|
|
12
|
+
],
|
|
13
|
+
"ignore_patterns": [
|
|
14
|
+
"simple_typos",
|
|
15
|
+
"one_time_fixes",
|
|
16
|
+
"external_api_issues"
|
|
17
|
+
]
|
|
18
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# Continuous Learning - Session Evaluator
|
|
3
|
+
# Runs on Stop hook to extract reusable patterns from Claude Code sessions
|
|
4
|
+
#
|
|
5
|
+
# Why Stop hook instead of UserPromptSubmit:
|
|
6
|
+
# - Stop runs once at session end (lightweight)
|
|
7
|
+
# - UserPromptSubmit runs every message (heavy, adds latency)
|
|
8
|
+
#
|
|
9
|
+
# Hook config (in ~/.claude/settings.json):
|
|
10
|
+
# {
|
|
11
|
+
# "hooks": {
|
|
12
|
+
# "Stop": [{
|
|
13
|
+
# "matcher": "*",
|
|
14
|
+
# "hooks": [{
|
|
15
|
+
# "type": "command",
|
|
16
|
+
# "command": "~/.claude/skills/continuous-learning/evaluate-session.sh"
|
|
17
|
+
# }]
|
|
18
|
+
# }]
|
|
19
|
+
# }
|
|
20
|
+
# }
|
|
21
|
+
#
|
|
22
|
+
# Patterns to detect: error_resolution, debugging_techniques, workarounds, project_specific
|
|
23
|
+
# Patterns to ignore: simple_typos, one_time_fixes, external_api_issues
|
|
24
|
+
# Extracted skills saved to: ~/.claude/skills/learned/
|
|
25
|
+
|
|
26
|
+
set -e
|
|
27
|
+
|
|
28
|
+
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
29
|
+
CONFIG_FILE="$SCRIPT_DIR/config.json"
|
|
30
|
+
LEARNED_SKILLS_PATH="${HOME}/.claude/skills/learned"
|
|
31
|
+
MIN_SESSION_LENGTH=10
|
|
32
|
+
|
|
33
|
+
# Load config if exists
|
|
34
|
+
if [ -f "$CONFIG_FILE" ]; then
|
|
35
|
+
if ! command -v jq &>/dev/null; then
|
|
36
|
+
echo "[ContinuousLearning] jq is required to parse config.json but not installed, using defaults" >&2
|
|
37
|
+
else
|
|
38
|
+
MIN_SESSION_LENGTH=$(jq -r '.min_session_length // 10' "$CONFIG_FILE")
|
|
39
|
+
LEARNED_SKILLS_PATH=$(jq -r '.learned_skills_path // "~/.claude/skills/learned/"' "$CONFIG_FILE" | sed "s|~|$HOME|")
|
|
40
|
+
fi
|
|
41
|
+
fi
|
|
42
|
+
|
|
43
|
+
# Ensure learned skills directory exists
|
|
44
|
+
mkdir -p "$LEARNED_SKILLS_PATH"
|
|
45
|
+
|
|
46
|
+
# Get transcript path from stdin JSON (Claude Code hook input)
|
|
47
|
+
# Falls back to env var for backwards compatibility
|
|
48
|
+
stdin_data=$(cat)
|
|
49
|
+
transcript_path=$(echo "$stdin_data" | grep -o '"transcript_path":"[^"]*"' | head -1 | cut -d'"' -f4)
|
|
50
|
+
if [ -z "$transcript_path" ]; then
|
|
51
|
+
transcript_path="${CLAUDE_TRANSCRIPT_PATH:-}"
|
|
52
|
+
fi
|
|
53
|
+
|
|
54
|
+
if [ -z "$transcript_path" ] || [ ! -f "$transcript_path" ]; then
|
|
55
|
+
exit 0
|
|
56
|
+
fi
|
|
57
|
+
|
|
58
|
+
# Count messages in session
|
|
59
|
+
message_count=$(grep -c '"type":"user"' "$transcript_path" 2>/dev/null || echo "0")
|
|
60
|
+
|
|
61
|
+
# Skip short sessions
|
|
62
|
+
if [ "$message_count" -lt "$MIN_SESSION_LENGTH" ]; then
|
|
63
|
+
echo "[ContinuousLearning] Session too short ($message_count messages), skipping" >&2
|
|
64
|
+
exit 0
|
|
65
|
+
fi
|
|
66
|
+
|
|
67
|
+
# Signal to Claude that session should be evaluated for extractable patterns
|
|
68
|
+
echo "[ContinuousLearning] Session has $message_count messages - evaluate for extractable patterns" >&2
|
|
69
|
+
echo "[ContinuousLearning] Save learned skills to: $LEARNED_SKILLS_PATH" >&2
|
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: production-audit
|
|
3
|
+
description: Local-evidence production readiness audit for shipped apps, pre-launch reviews, post-merge checks, and "what breaks in prod?" questions without sending repo data to an external audit service.
|
|
4
|
+
origin: community
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Production Audit
|
|
8
|
+
|
|
9
|
+
Use this skill when the user asks whether an application is ready to ship, what
|
|
10
|
+
could break in production, or what must be fixed before a launch. This is a
|
|
11
|
+
maintainer-safe rewrite of the stale community production-audit idea: it keeps
|
|
12
|
+
the useful production-readiness lens and removes unpinned external execution and
|
|
13
|
+
third-party data sharing.
|
|
14
|
+
|
|
15
|
+
## When to Use
|
|
16
|
+
|
|
17
|
+
- The user asks "is this production-ready", "what would break in prod", "what
|
|
18
|
+
did we miss", "audit this repo", or "ready to ship?"
|
|
19
|
+
- A feature was merged and needs a pre-deploy or post-merge risk pass.
|
|
20
|
+
- A public launch, demo, customer rollout, or investor walkthrough is close.
|
|
21
|
+
- CI is green but the user wants production risk, not only test status.
|
|
22
|
+
- A deployed URL, release branch, PR, or current checkout is available for
|
|
23
|
+
evidence gathering.
|
|
24
|
+
|
|
25
|
+
## When Not to Use
|
|
26
|
+
|
|
27
|
+
- During active implementation when the right lens is line-level secure coding;
|
|
28
|
+
use `security-review` first.
|
|
29
|
+
- For pure libraries, templates, docs-only repos, or scaffolds unless the user
|
|
30
|
+
wants packaging/release readiness rather than application readiness.
|
|
31
|
+
- When the user asks for a formal compliance audit. This skill is engineering
|
|
32
|
+
triage, not legal, financial, medical, or regulatory certification.
|
|
33
|
+
- When the only available evidence is a product idea with no repo, deployment,
|
|
34
|
+
CI, or runtime surface.
|
|
35
|
+
|
|
36
|
+
## How It Works
|
|
37
|
+
|
|
38
|
+
Build the audit from local and user-authorized evidence. Do not run unpinned
|
|
39
|
+
remote code, upload repository contents to third-party services, or call
|
|
40
|
+
external scanners unless the user explicitly approves that specific tool and
|
|
41
|
+
data flow.
|
|
42
|
+
|
|
43
|
+
Use this order:
|
|
44
|
+
|
|
45
|
+
1. Establish the release surface.
|
|
46
|
+
2. Read recent changes and current branch state.
|
|
47
|
+
3. Inspect runtime, auth, data, payment, background-job, AI, and deployment
|
|
48
|
+
boundaries that actually exist in the repo.
|
|
49
|
+
4. Check CI, tests, migrations, environment documentation, and rollback path.
|
|
50
|
+
5. Produce a short ship/block recommendation with specific fixes.
|
|
51
|
+
|
|
52
|
+
## Evidence Checklist
|
|
53
|
+
|
|
54
|
+
Start with cheap, local signals:
|
|
55
|
+
|
|
56
|
+
```text
|
|
57
|
+
git status --short --branch
|
|
58
|
+
git log --oneline --decorate -20
|
|
59
|
+
git diff --stat origin/main...HEAD
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Then inspect the project-specific surface:
|
|
63
|
+
|
|
64
|
+
- Package scripts, CI workflows, release scripts, Docker files, and deployment
|
|
65
|
+
manifests.
|
|
66
|
+
- API routes, webhooks, auth middleware, background workers, cron jobs, and
|
|
67
|
+
database migrations.
|
|
68
|
+
- Environment variable documentation and startup checks.
|
|
69
|
+
- Observability hooks, error reporting, logs, health checks, and dashboards.
|
|
70
|
+
- Rollback, seed, migration, and backfill instructions.
|
|
71
|
+
- E2E coverage for the user paths that matter most.
|
|
72
|
+
|
|
73
|
+
If a deployed URL is in scope, use browser or HTTP checks only against that URL
|
|
74
|
+
and avoid credentialed actions unless the user supplies a safe test account.
|
|
75
|
+
|
|
76
|
+
## Risk Lenses
|
|
77
|
+
|
|
78
|
+
### Security And Auth
|
|
79
|
+
|
|
80
|
+
- Are public routes, API routes, and admin routes clearly separated?
|
|
81
|
+
- Are auth and authorization enforced server-side?
|
|
82
|
+
- Are secrets kept out of client bundles, logs, example output, and checked-in
|
|
83
|
+
files?
|
|
84
|
+
- Are rate limits, CSRF protections, CORS policy, and upload validation present
|
|
85
|
+
where the app needs them?
|
|
86
|
+
- Does the AI or agent surface defend against prompt injection, tool abuse, and
|
|
87
|
+
untrusted content crossing into privileged actions?
|
|
88
|
+
|
|
89
|
+
### Data Integrity
|
|
90
|
+
|
|
91
|
+
- Do migrations run forward cleanly and have a rollback or recovery plan?
|
|
92
|
+
- Are destructive migrations, backfills, and data imports staged safely?
|
|
93
|
+
- Do database policies, grants, and service-role boundaries match the app's
|
|
94
|
+
tenancy model?
|
|
95
|
+
- Are retries idempotent for writes, jobs, and webhook handlers?
|
|
96
|
+
|
|
97
|
+
### Payments And Webhooks
|
|
98
|
+
|
|
99
|
+
- Are webhook signatures verified before parsing trusted payload fields?
|
|
100
|
+
- Is each payment, subscription, or fulfillment webhook idempotent?
|
|
101
|
+
- Are replay, duplicate delivery, and out-of-order delivery handled?
|
|
102
|
+
- Are test-mode and live-mode credentials separated?
|
|
103
|
+
|
|
104
|
+
### Operations
|
|
105
|
+
|
|
106
|
+
- Can the app start from a clean checkout using documented commands?
|
|
107
|
+
- Are required environment variables named, validated, and fail-fast?
|
|
108
|
+
- Is there a health check that proves dependencies are reachable?
|
|
109
|
+
- Are deploy, rollback, and incident-owner paths documented?
|
|
110
|
+
- Are logs useful without leaking secrets or personal data?
|
|
111
|
+
|
|
112
|
+
### User Experience
|
|
113
|
+
|
|
114
|
+
- Are the launch-critical paths covered on desktop and mobile?
|
|
115
|
+
- Are forms usable on mobile without input zoom, layout overlap, or blocked
|
|
116
|
+
submission states?
|
|
117
|
+
- Do loading, empty, error, and permission-denied states tell the user what
|
|
118
|
+
happened?
|
|
119
|
+
- Is there a support or recovery path when a critical operation fails?
|
|
120
|
+
|
|
121
|
+
## Scoring
|
|
122
|
+
|
|
123
|
+
Use scores to force prioritization, not to imply mathematical certainty.
|
|
124
|
+
|
|
125
|
+
| Band | Score | Meaning |
|
|
126
|
+
| --- | --- | --- |
|
|
127
|
+
| Blocked | 0-49 | Do not ship until the top risks are fixed |
|
|
128
|
+
| Risky | 50-69 | Ship only behind a small rollout or internal beta |
|
|
129
|
+
| Launchable With Caveats | 70-84 | Ship if owners accept the listed risks |
|
|
130
|
+
| Strong | 85-100 | No obvious launch blockers from available evidence |
|
|
131
|
+
|
|
132
|
+
Cap the score at `69` if any of these are true:
|
|
133
|
+
|
|
134
|
+
- Authentication or authorization is missing on sensitive data.
|
|
135
|
+
- Payment or fulfillment webhooks are not idempotent.
|
|
136
|
+
- Required migrations cannot be run safely.
|
|
137
|
+
- Secrets are exposed in client bundles, logs, or committed files.
|
|
138
|
+
- There is no rollback path for a high-impact release.
|
|
139
|
+
|
|
140
|
+
Cap the score at `84` if CI is not green or the launch-critical path was not
|
|
141
|
+
tested end to end.
|
|
142
|
+
|
|
143
|
+
## Output Format
|
|
144
|
+
|
|
145
|
+
Lead with one sentence:
|
|
146
|
+
|
|
147
|
+
```text
|
|
148
|
+
Production audit: 76/100, launchable with caveats, with webhook idempotency and rollback docs as the two risks to fix before public launch.
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
Then list:
|
|
152
|
+
|
|
153
|
+
- `Blockers`: must-fix items before deploy.
|
|
154
|
+
- `High-value fixes`: next fixes if the user wants to improve the score.
|
|
155
|
+
- `Evidence checked`: files, commands, CI, deployed URL, or PRs inspected.
|
|
156
|
+
- `Evidence missing`: what would change confidence if provided.
|
|
157
|
+
- `Next action`: one concrete fix or verification step.
|
|
158
|
+
|
|
159
|
+
Keep strengths short. The user asked for readiness, so the useful answer is the
|
|
160
|
+
remaining risk and the next action.
|
|
161
|
+
|
|
162
|
+
## Example
|
|
163
|
+
|
|
164
|
+
User:
|
|
165
|
+
|
|
166
|
+
```text
|
|
167
|
+
is this ready to ship?
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
Response:
|
|
171
|
+
|
|
172
|
+
```text
|
|
173
|
+
Production audit: 68/100, risky, because Stripe webhooks are verified but not idempotent and there is no rollback note for the pending migration.
|
|
174
|
+
|
|
175
|
+
Blockers:
|
|
176
|
+
- Add idempotency for `checkout.session.completed` before fulfilling orders.
|
|
177
|
+
- Write and test the rollback path for `20260511_add_billing_state.sql`.
|
|
178
|
+
|
|
179
|
+
High-value fixes:
|
|
180
|
+
- Add a health check that verifies database and payment-provider reachability.
|
|
181
|
+
- Add one E2E path for upgrade, webhook fulfillment, and billing-page refresh.
|
|
182
|
+
|
|
183
|
+
Evidence checked:
|
|
184
|
+
- `api/stripe/webhook.ts`
|
|
185
|
+
- `db/migrations/20260511_add_billing_state.sql`
|
|
186
|
+
- GitHub Actions run for the release branch
|
|
187
|
+
|
|
188
|
+
Next action: Want me to patch webhook idempotency first?
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
## Anti-Patterns
|
|
192
|
+
|
|
193
|
+
- Running `npx <package>@latest` or a remote scanner as the default audit path.
|
|
194
|
+
- Uploading source, secrets, customer data, or private topology to an external
|
|
195
|
+
audit service without explicit approval.
|
|
196
|
+
- Producing a score without naming the evidence checked.
|
|
197
|
+
- Treating green CI as production readiness.
|
|
198
|
+
- Ending with a generic "let me know what you want to do."
|
|
199
|
+
|
|
200
|
+
## See Also
|
|
201
|
+
|
|
202
|
+
- Skill: `security-review`
|
|
203
|
+
- Skill: `deployment-patterns`
|
|
204
|
+
- Skill: `e2e-testing`
|
|
205
|
+
- Skill: `tdd-workflow`
|
|
206
|
+
- Skill: `verification-loop`
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: recursive-decision-ledger
|
|
3
|
+
description: Use when the user asks for repeated rollouts, marked decision processes, high-dimensional search, stochastic optimization, local-optima exploration, ensemble comparison, or recursive reasoning with a visible evidence trail.
|
|
4
|
+
origin: ECC
|
|
5
|
+
tools: Read, Write, Edit, Bash, Grep, Glob
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Recursive Decision Ledger
|
|
9
|
+
|
|
10
|
+
Use this skill when the user is trying to force deeper computation through
|
|
11
|
+
repeated rollouts or "Prime Gauss" style recursive prompting. Preserve the useful
|
|
12
|
+
part: repeated trials, prior memory, fresh information, and explicit marks.
|
|
13
|
+
Remove the unsafe part: pretending the loop proves certainty.
|
|
14
|
+
|
|
15
|
+
## Ledger Contract
|
|
16
|
+
|
|
17
|
+
Every rollout should record:
|
|
18
|
+
|
|
19
|
+
- rollout id and timestamp;
|
|
20
|
+
- prior accepted winner and prior watchlist;
|
|
21
|
+
- fresh information ingested;
|
|
22
|
+
- search space size;
|
|
23
|
+
- model families or heuristics used;
|
|
24
|
+
- trial count and effective trial count;
|
|
25
|
+
- top candidates;
|
|
26
|
+
- decision marks;
|
|
27
|
+
- coherence marks against the prior ledger;
|
|
28
|
+
- promotion gate result.
|
|
29
|
+
|
|
30
|
+
Prefer JSONL for append-only ledgers and Markdown for human summaries.
|
|
31
|
+
|
|
32
|
+
## Rollout Loop
|
|
33
|
+
|
|
34
|
+
1. Load the prior ledger.
|
|
35
|
+
2. Capture new information at time-step zero.
|
|
36
|
+
3. Run the bounded search.
|
|
37
|
+
4. Mark each candidate: accept, watch, reject, decay watch, or needs replay.
|
|
38
|
+
5. Compare winners against prior winners and latest marked rollout.
|
|
39
|
+
6. Downgrade candidates when drift, tail risk, stale data, or failed replay
|
|
40
|
+
invalidates the previous mark.
|
|
41
|
+
7. Append artifacts before summarizing.
|
|
42
|
+
|
|
43
|
+
## Coherence Mark
|
|
44
|
+
|
|
45
|
+
Include a compact coherence mark:
|
|
46
|
+
|
|
47
|
+
```text
|
|
48
|
+
Ensemble matches prior winner: true
|
|
49
|
+
Recursive matches prior winner: false
|
|
50
|
+
Latest rollout match: true
|
|
51
|
+
Live promotion allowed: false
|
|
52
|
+
Reason: replay and freshness gates not satisfied
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Promotion Rules
|
|
56
|
+
|
|
57
|
+
For trading, capital allocation, production deploys, migrations, or destructive
|
|
58
|
+
ops, recursive confidence is not approval.
|
|
59
|
+
|
|
60
|
+
Default to paper, dry-run, read-only, preview, or staged mode unless the user
|
|
61
|
+
explicitly approves the live action and the repo/service gate supports it.
|
|
62
|
+
|
|
63
|
+
Promote only when:
|
|
64
|
+
|
|
65
|
+
- the candidate beats the prior accepted winner on the chosen metric;
|
|
66
|
+
- correctness and replay checks pass;
|
|
67
|
+
- risk limits are explicit;
|
|
68
|
+
- the evidence is durable;
|
|
69
|
+
- the user has approved the live step when needed.
|
|
70
|
+
|
|
71
|
+
## Summary Shape
|
|
72
|
+
|
|
73
|
+
Lead with the decision, not the drama:
|
|
74
|
+
|
|
75
|
+
```text
|
|
76
|
+
Rollout 15 complete. The prior winner still holds, but edge deteriorated 17%.
|
|
77
|
+
Status: watch, not live. Next gate: 20 replay fills with fresh orderbook age
|
|
78
|
+
below threshold.
|
|
79
|
+
```
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: literature-review
|
|
3
|
+
description: Systematic literature-review workflow for academic, biomedical, technical, and scientific topics, including search planning, source screening, synthesis, citation checks, and evidence logging.
|
|
4
|
+
origin: community
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Literature Review
|
|
8
|
+
|
|
9
|
+
Use this skill when the task is to find, screen, synthesize, and cite a body of
|
|
10
|
+
academic or technical literature.
|
|
11
|
+
|
|
12
|
+
## When to Use
|
|
13
|
+
|
|
14
|
+
- Building a systematic, scoping, or narrative literature review.
|
|
15
|
+
- Synthesizing the state of the art for a research question.
|
|
16
|
+
- Finding gaps, contradictions, or future-work directions.
|
|
17
|
+
- Preparing citation-backed background sections for papers or reports.
|
|
18
|
+
- Comparing evidence across peer-reviewed papers, preprints, patents, and
|
|
19
|
+
technical reports.
|
|
20
|
+
|
|
21
|
+
## Review Types
|
|
22
|
+
|
|
23
|
+
- **Narrative review**: broad synthesis; useful for orientation.
|
|
24
|
+
- **Scoping review**: maps concepts, methods, and evidence gaps.
|
|
25
|
+
- **Systematic review**: predefined protocol, reproducible search, explicit
|
|
26
|
+
screening and exclusion.
|
|
27
|
+
- **Meta-analysis**: systematic review plus quantitative effect aggregation.
|
|
28
|
+
|
|
29
|
+
Ask the user which level of rigor is needed. If unspecified, default to a
|
|
30
|
+
scoping review for exploratory work and a systematic review for publication or
|
|
31
|
+
clinical claims.
|
|
32
|
+
|
|
33
|
+
## Workflow
|
|
34
|
+
|
|
35
|
+
### 1. Define the Question
|
|
36
|
+
|
|
37
|
+
Convert the prompt into a searchable research question.
|
|
38
|
+
|
|
39
|
+
For clinical or biomedical work, use PICO:
|
|
40
|
+
|
|
41
|
+
- Population
|
|
42
|
+
- Intervention or exposure
|
|
43
|
+
- Comparator
|
|
44
|
+
- Outcome
|
|
45
|
+
|
|
46
|
+
For technical work, use:
|
|
47
|
+
|
|
48
|
+
- system or domain
|
|
49
|
+
- method or intervention
|
|
50
|
+
- comparison baseline
|
|
51
|
+
- evaluation metric
|
|
52
|
+
|
|
53
|
+
### 2. Plan the Search
|
|
54
|
+
|
|
55
|
+
Create a search protocol before collecting sources:
|
|
56
|
+
|
|
57
|
+
- databases to search
|
|
58
|
+
- date range
|
|
59
|
+
- languages
|
|
60
|
+
- publication types
|
|
61
|
+
- inclusion criteria
|
|
62
|
+
- exclusion criteria
|
|
63
|
+
- exact search strings
|
|
64
|
+
|
|
65
|
+
Minimum useful database set:
|
|
66
|
+
|
|
67
|
+
- PubMed for biomedical and life-sciences literature.
|
|
68
|
+
- arXiv for CS, math, physics, quantitative biology, and preprints.
|
|
69
|
+
- Semantic Scholar or Crossref for broad academic discovery.
|
|
70
|
+
- Domain-specific sources when relevant, such as clinical-trial registries,
|
|
71
|
+
patent databases, standards bodies, or official technical docs.
|
|
72
|
+
|
|
73
|
+
### 3. Search and Log Evidence
|
|
74
|
+
|
|
75
|
+
Keep a search log that makes the review reproducible:
|
|
76
|
+
|
|
77
|
+
```markdown
|
|
78
|
+
| Database | Date searched | Query | Filters | Results | Export |
|
|
79
|
+
| --- | --- | --- | --- | ---: | --- |
|
|
80
|
+
| PubMed | 2026-05-11 | `("CRISPR"[tiab] OR "Cas9"[tiab]) AND "sickle cell"[tiab]` | 2020:2026, English | 86 | PMID list |
|
|
81
|
+
| arXiv | 2026-05-11 | `CRISPR sickle cell gene editing` | q-bio, 2020:2026 | 9 | BibTeX |
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Save raw IDs, URLs, DOIs, abstracts, and notes separately from the final prose.
|
|
85
|
+
|
|
86
|
+
### 4. Deduplicate
|
|
87
|
+
|
|
88
|
+
Deduplicate in this order:
|
|
89
|
+
|
|
90
|
+
1. DOI
|
|
91
|
+
2. PMID or arXiv ID
|
|
92
|
+
3. exact title
|
|
93
|
+
4. normalized title plus first author and year
|
|
94
|
+
|
|
95
|
+
Record how many duplicates were removed.
|
|
96
|
+
|
|
97
|
+
### 5. Screen Sources
|
|
98
|
+
|
|
99
|
+
Screen in stages:
|
|
100
|
+
|
|
101
|
+
1. title
|
|
102
|
+
2. abstract
|
|
103
|
+
3. full text
|
|
104
|
+
|
|
105
|
+
For systematic work, record exclusion reasons:
|
|
106
|
+
|
|
107
|
+
- wrong population
|
|
108
|
+
- wrong intervention
|
|
109
|
+
- wrong outcome
|
|
110
|
+
- not primary research
|
|
111
|
+
- duplicate
|
|
112
|
+
- unavailable full text
|
|
113
|
+
- outside date range
|
|
114
|
+
|
|
115
|
+
### 6. Extract Data
|
|
116
|
+
|
|
117
|
+
Use a structured extraction table:
|
|
118
|
+
|
|
119
|
+
```markdown
|
|
120
|
+
| Study | Design | Population/Data | Method | Comparator | Outcome | Key finding | Limitations |
|
|
121
|
+
| --- | --- | --- | --- | --- | --- | --- | --- |
|
|
122
|
+
| Author Year | RCT/cohort/review/etc. | sample or corpus | method | baseline | measured outcome | result | caveat |
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
For technical papers, include dataset, benchmark, metric, baseline, and
|
|
126
|
+
reproducibility notes.
|
|
127
|
+
|
|
128
|
+
### 7. Synthesize
|
|
129
|
+
|
|
130
|
+
Group evidence by theme rather than summarizing papers one by one.
|
|
131
|
+
|
|
132
|
+
Useful synthesis lenses:
|
|
133
|
+
|
|
134
|
+
- strongest evidence
|
|
135
|
+
- conflicting evidence
|
|
136
|
+
- methodological weaknesses
|
|
137
|
+
- population or dataset limits
|
|
138
|
+
- recency and replication
|
|
139
|
+
- practical implications
|
|
140
|
+
- unanswered questions
|
|
141
|
+
|
|
142
|
+
Separate claims by confidence:
|
|
143
|
+
|
|
144
|
+
- **High confidence**: replicated, high-quality evidence across sources.
|
|
145
|
+
- **Medium confidence**: plausible but limited by sample, method, or recency.
|
|
146
|
+
- **Low confidence**: early, speculative, single-source, or weakly measured.
|
|
147
|
+
|
|
148
|
+
### 8. Verify Citations
|
|
149
|
+
|
|
150
|
+
Before finalizing:
|
|
151
|
+
|
|
152
|
+
- verify DOI, PMID, arXiv ID, or official URL
|
|
153
|
+
- check author names and publication year
|
|
154
|
+
- do not cite a paper for a claim it does not make
|
|
155
|
+
- mark preprints as preprints
|
|
156
|
+
- distinguish reviews from primary evidence
|
|
157
|
+
|
|
158
|
+
## Output Template
|
|
159
|
+
|
|
160
|
+
```markdown
|
|
161
|
+
# Literature Review: <Topic>
|
|
162
|
+
|
|
163
|
+
Generated: <date>
|
|
164
|
+
Review type: <narrative | scoping | systematic | meta-analysis>
|
|
165
|
+
Search window: <dates>
|
|
166
|
+
Databases: <list>
|
|
167
|
+
|
|
168
|
+
## Research Question
|
|
169
|
+
|
|
170
|
+
## Search Strategy
|
|
171
|
+
|
|
172
|
+
## Inclusion and Exclusion Criteria
|
|
173
|
+
|
|
174
|
+
## Evidence Summary
|
|
175
|
+
|
|
176
|
+
## Thematic Synthesis
|
|
177
|
+
|
|
178
|
+
## Gaps and Limitations
|
|
179
|
+
|
|
180
|
+
## References
|
|
181
|
+
|
|
182
|
+
## Search Log
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
## Pitfalls
|
|
186
|
+
|
|
187
|
+
- Do not treat search snippets as evidence.
|
|
188
|
+
- Do not mix preprints, reviews, and primary studies without labeling them.
|
|
189
|
+
- Do not omit negative or conflicting findings.
|
|
190
|
+
- Do not claim systematic-review rigor without a reproducible protocol.
|
|
191
|
+
- Do not use a single database for a broad claim unless the scope is explicitly
|
|
192
|
+
limited to that database.
|