@aria_asi/cli 0.2.40 → 0.2.41
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/bin/aria.js +236 -34
- package/dist/aria-connector/src/action-ledger-core.d.ts +387 -0
- package/dist/aria-connector/src/action-ledger-core.d.ts.map +1 -0
- package/dist/aria-connector/src/action-ledger-core.js +638 -0
- package/dist/aria-connector/src/action-ledger-core.js.map +1 -0
- package/dist/aria-connector/src/chat.d.ts.map +1 -1
- package/dist/aria-connector/src/chat.js +5 -6
- package/dist/aria-connector/src/chat.js.map +1 -1
- package/dist/aria-connector/src/codebase-scanner.d.ts +1 -1
- package/dist/aria-connector/src/codebase-scanner.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/claude-code.d.ts +1 -0
- package/dist/aria-connector/src/connectors/claude-code.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/claude-code.js +152 -14
- package/dist/aria-connector/src/connectors/claude-code.js.map +1 -1
- package/dist/aria-connector/src/connectors/codebase-awareness.d.ts +10 -0
- package/dist/aria-connector/src/connectors/codebase-awareness.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/codebase-awareness.js +276 -27
- package/dist/aria-connector/src/connectors/codebase-awareness.js.map +1 -1
- package/dist/aria-connector/src/connectors/codex.d.ts +3 -1
- package/dist/aria-connector/src/connectors/codex.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/codex.js +1223 -41
- package/dist/aria-connector/src/connectors/codex.js.map +1 -1
- package/dist/aria-connector/src/connectors/cursor.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/cursor.js +7 -0
- package/dist/aria-connector/src/connectors/cursor.js.map +1 -1
- package/dist/aria-connector/src/connectors/governed-adapter.d.ts +30 -0
- package/dist/aria-connector/src/connectors/governed-adapter.d.ts.map +1 -0
- package/dist/aria-connector/src/connectors/governed-adapter.js +132 -0
- package/dist/aria-connector/src/connectors/governed-adapter.js.map +1 -0
- package/dist/aria-connector/src/connectors/opencode.d.ts +3 -1
- package/dist/aria-connector/src/connectors/opencode.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/opencode.js +18 -2
- package/dist/aria-connector/src/connectors/opencode.js.map +1 -1
- package/dist/aria-connector/src/connectors/repo-guard.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/repo-guard.js +25 -14
- package/dist/aria-connector/src/connectors/repo-guard.js.map +1 -1
- package/dist/aria-connector/src/connectors/runtime.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/runtime.js +92 -2
- package/dist/aria-connector/src/connectors/runtime.js.map +1 -1
- package/dist/aria-connector/src/connectors/shell.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/shell.js +123 -7
- package/dist/aria-connector/src/connectors/shell.js.map +1 -1
- package/dist/aria-connector/src/cross-cli-hive-binding.d.ts +63 -0
- package/dist/aria-connector/src/cross-cli-hive-binding.d.ts.map +1 -0
- package/dist/aria-connector/src/cross-cli-hive-binding.js +205 -0
- package/dist/aria-connector/src/cross-cli-hive-binding.js.map +1 -0
- package/dist/aria-connector/src/garden-control-plane.d.ts +6 -1
- package/dist/aria-connector/src/garden-control-plane.d.ts.map +1 -1
- package/dist/aria-connector/src/garden-control-plane.js +8 -2
- package/dist/aria-connector/src/garden-control-plane.js.map +1 -1
- package/dist/aria-connector/src/governed-surface-runner.d.ts +189 -0
- package/dist/aria-connector/src/governed-surface-runner.d.ts.map +1 -0
- package/dist/aria-connector/src/governed-surface-runner.js +1022 -0
- package/dist/aria-connector/src/governed-surface-runner.js.map +1 -0
- package/dist/aria-connector/src/index.d.ts +10 -1
- package/dist/aria-connector/src/index.d.ts.map +1 -1
- package/dist/aria-connector/src/index.js +5 -0
- package/dist/aria-connector/src/index.js.map +1 -1
- package/dist/aria-connector/src/task-runner.d.ts +3 -0
- package/dist/aria-connector/src/task-runner.d.ts.map +1 -0
- package/dist/aria-connector/src/task-runner.js +3526 -0
- package/dist/aria-connector/src/task-runner.js.map +1 -0
- package/dist/aria-web/src/lib/codebase-scanner.d.ts +21 -2
- package/dist/aria-web/src/lib/codebase-scanner.d.ts.map +1 -1
- package/dist/aria-web/src/lib/codebase-scanner.js +59 -14
- package/dist/aria-web/src/lib/codebase-scanner.js.map +1 -1
- package/dist/assets/hooks/README.md +58 -0
- package/dist/assets/hooks/aria-agent-handoff.mjs +147 -2
- package/dist/assets/hooks/aria-agent-ledger-merge.mjs +31 -7
- package/dist/assets/hooks/aria-architect-fallback.mjs +10 -2
- package/dist/assets/hooks/aria-claim-evidence-stop-gate.mjs +240 -0
- package/dist/assets/hooks/aria-cognition-substrate-binding.mjs +84 -10
- package/dist/assets/hooks/aria-first-class-coach.mjs +305 -10
- package/dist/assets/hooks/aria-harness-via-sdk.mjs +93 -16
- package/dist/assets/hooks/aria-import-resolution-gate.mjs +106 -20
- package/dist/assets/hooks/aria-outcome-record.mjs +56 -20
- package/dist/assets/hooks/aria-pre-emit-autoload.mjs +1809 -0
- package/dist/assets/hooks/aria-pre-emit-autoload.mjs.before-orchestration-redesign +1400 -0
- package/dist/assets/hooks/aria-pre-emit-dryrun.mjs +22 -3
- package/dist/assets/hooks/aria-pre-text-gate.mjs +11 -2
- package/dist/assets/hooks/aria-pre-tool-gate.mjs +477 -81
- package/dist/assets/hooks/aria-pre-tool-use.mjs +70 -6
- package/dist/assets/hooks/aria-preprompt-consult.mjs +23 -4
- package/dist/assets/hooks/aria-repo-doctrine-gate.mjs +29 -3
- package/dist/assets/hooks/aria-stop-gate.mjs +585 -76
- package/dist/assets/hooks/aria-trigger-autolearn.mjs +17 -3
- package/dist/assets/hooks/aria-universal-turn-packet.mjs +1165 -0
- package/dist/assets/hooks/aria-userprompt-abandon-detect.mjs +9 -1
- package/dist/assets/hooks/canonical-settings-block.json +172 -0
- package/dist/assets/hooks/codex-native/aria-harness-ticker-sidecar.mjs +92 -0
- package/dist/assets/hooks/codex-native/aria-hive-wal-consumer.mjs +86 -0
- package/dist/assets/hooks/codex-native/aria-live-ticker.mjs +38 -0
- package/dist/assets/hooks/codex-native/aria-post-tool-use.mjs +236 -0
- package/dist/assets/hooks/codex-native/aria-pre-tool-use.mjs +362 -0
- package/dist/assets/hooks/codex-native/aria-stop.mjs +691 -0
- package/dist/assets/hooks/codex-native/aria-userprompt-submit.mjs +623 -0
- package/dist/assets/hooks/codex-native/atlas-session-context.mjs +121 -0
- package/dist/assets/hooks/codex-native/lib/evaluate-with-kernel.mjs +257 -0
- package/dist/assets/hooks/codex-native/lib/hive-wal-consumer.mjs +452 -0
- package/dist/assets/hooks/codex-native/lib/kernel/deterministic-cognitive-kernel.mjs +914 -0
- package/dist/assets/hooks/codex-native/lib/project-boundary-cognition.mjs +143 -0
- package/dist/assets/hooks/codex-native/lib/runtime-client.mjs +3567 -0
- package/dist/assets/hooks/codex-native/lib/task-project-ledger.mjs +294 -0
- package/dist/assets/hooks/doctrine_trigger_map.json +236 -25
- package/dist/assets/hooks/doctrine_trigger_map.schema.json +46 -0
- package/dist/assets/hooks/install.sh +84 -0
- package/dist/assets/hooks/lib/action-ledger-core.mjs +269 -0
- package/dist/assets/hooks/lib/aria-gate-ledger.mjs +143 -0
- package/dist/assets/hooks/lib/ast-stub-shape-detector.mjs +107 -0
- package/dist/assets/hooks/lib/atlas-dossier-client.mjs +151 -0
- package/dist/assets/hooks/lib/atlas-orchestrator-postwire.mjs +221 -0
- package/dist/assets/hooks/lib/canonical-lenses.mjs +83 -6
- package/dist/assets/hooks/lib/coach-intent-classifier.mjs +248 -0
- package/dist/assets/hooks/lib/cognitive-block-parser.mjs +111 -0
- package/dist/assets/hooks/lib/doctrine-trigger-map-loader.mjs +137 -0
- package/dist/assets/hooks/lib/domain-output-quality.mjs +132 -3
- package/dist/assets/hooks/lib/empty-catch-scanner.mjs +91 -0
- package/dist/assets/hooks/lib/end-phase-qa-autofire.mjs +426 -0
- package/dist/assets/hooks/lib/evaluate-with-kernel.mjs +133 -0
- package/dist/assets/hooks/lib/first-class-coach.mjs +454 -19
- package/dist/assets/hooks/lib/gate-audit.mjs +12 -2
- package/dist/assets/hooks/lib/gate-loop-state.mjs +11 -2
- package/dist/assets/hooks/lib/goal-contract-quality.mjs +302 -0
- package/dist/assets/hooks/lib/hook-message-window.mjs +101 -9
- package/dist/assets/hooks/lib/invocation-required-verifier.mjs +184 -0
- package/dist/assets/hooks/lib/kernel/deterministic-cognitive-kernel.mjs +906 -0
- package/dist/assets/hooks/lib/obligation-ledger.mjs +147 -0
- package/dist/assets/hooks/lib/orchestration-manifest-extract.mjs +217 -0
- package/dist/assets/hooks/lib/owner-authorizations.mjs +269 -0
- package/dist/assets/hooks/lib/probe-discipline-scanner.mjs +142 -0
- package/dist/assets/hooks/lib/project-boundary-cognition.mjs +143 -0
- package/dist/assets/hooks/lib/recovery-context.mjs +151 -0
- package/dist/assets/hooks/lib/recovery-template-loader.mjs +154 -0
- package/dist/assets/hooks/lib/self-doctrine-check.mjs +321 -0
- package/dist/assets/hooks/lib/sensitive-shape-detector.mjs +64 -0
- package/dist/assets/hooks/lib/skill-autoload-gate-impl.mjs +226 -1
- package/dist/assets/hooks/lib/stop-hook-protocol.mjs +166 -0
- package/dist/assets/hooks/lib/surface-caught.mjs +94 -0
- package/dist/assets/hooks/recovery-templates/force-reauthor.md +67 -0
- package/dist/assets/hooks/recovery-templates/handoff-recovery.md +25 -0
- package/dist/assets/hooks/scripts/check-hard-risk-prefix.mjs +99 -0
- package/dist/assets/hooks/skills/aria-conversational-doctrine-discipline/SKILL.md +101 -0
- package/dist/assets/hooks/test-aria-preturn-memory-gate.mjs +2 -2
- package/dist/assets/hooks/test-tier-lens-labeling.mjs +14 -3
- package/dist/assets/opencode-plugins/harness-context/index.js +39 -6
- package/dist/assets/opencode-plugins/harness-context/task-project-ledger.mjs +5 -1
- package/dist/assets/opencode-plugins/harness-gate/index.js +36 -0
- package/dist/assets/opencode-plugins/harness-gate/lib/atlas-dossier-client.js +1 -0
- package/dist/assets/opencode-plugins/harness-gate/lib/recovery-grants.js +79 -0
- package/dist/assets/opencode-plugins/harness-outcome/index.js +12 -0
- package/dist/assets/opencode-plugins/harness-stop/index.js +97 -2
- package/dist/assets/opencode-plugins/harness-stop/lib/atlas-dossier-client.js +1 -0
- package/dist/assets/opencode-plugins/harness-stop/lib/domain-output-quality.js +15 -2
- package/dist/assets/opencode-plugins/lib/coach.js +148 -0
- package/dist/runtime/coach-kernel.mjs +144 -7
- package/dist/runtime/codex-bridge.mjs +254 -8
- package/dist/runtime/discipline/doctrine_trigger_map.json +236 -25
- package/dist/runtime/discipline/skills/aria-cognition/34-frameworks-unified/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-aristotle-cognitives/SKILL.md +128 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-aristotle-intra-phase/SKILL.md +99 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-aristotle-post-phase/SKILL.md +118 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-aristotle-pre-phase/SKILL.md +117 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-axioms-first-principles/SKILL.md +202 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-axioms-first-principles/agents/openai.yaml +4 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-axioms-first-principles/references/source-map.md +130 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-backend-architect/SKILL.md +124 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-backend-architect/references/backend-cookbook.md +417 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-business-audit/SKILL.md +133 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-business-audit/references/audit-cookbook.md +247 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-business-frame/SKILL.md +138 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-business-frame/references/business-cookbook.md +154 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-chat/SKILL.md +84 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-chat/scripts/aria-chat.sh +57 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-cognition-autofire/SKILL.md +137 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-cognition-batch/SKILL.md +264 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-decision-mizan/SKILL.md +136 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-decision-mizan/references/decision-frameworks.md +287 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-first-class-operating-contract/SKILL.md +104 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-frontend-architect/SKILL.md +123 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-frontend-architect/references/frontend-cookbook.md +358 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-fullstack-orchestrator/SKILL.md +127 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-fullstack-orchestrator/references/fullstack-cookbook.md +383 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-gtm-architect/SKILL.md +126 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-gtm-architect/references/gtm-cookbook.md +235 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-harness-deploy/SKILL.md +145 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-harness-no-stripping/SKILL.md +135 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-harness-onboarding/SKILL.md +130 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-harness-output-discipline/SKILL.md +120 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-harness-substrate-binding/SKILL.md +139 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-http-harness-client/SKILL.md +85 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-http-harness-client/scripts/smoke.mjs +47 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-k8s-deploy/SKILL.md +174 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-k8s-deploy/agents/openai.yaml +3 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-ladduniframe/SKILL.md +60 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-ledger-fleet-execution/SKILL.md +126 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-live-ops/SKILL.md +54 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-mac-ssh-ops/SKILL.md +100 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-memory-index/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-noor-cognitives/SKILL.md +120 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-ops/SKILL.md +60 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-ops/references/live-endpoints.md +59 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-quality-audit/SKILL.md +133 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-readable-output/SKILL.md +239 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-readable-output/references/layout-cookbook.md +366 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-reasoning/SKILL.md +67 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-reasoning/references/core-principles.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-repo-audit/SKILL.md +135 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-repo-audit/references/repo-audit-cookbook.md +375 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-research-orchestrator/SKILL.md +138 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-research-orchestrator/references/research-patterns.md +270 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-retention-engine/SKILL.md +120 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-retention-engine/references/retention-cookbook.md +271 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-revenue-engine/SKILL.md +128 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-revenue-engine/references/revenue-cookbook.md +227 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-senior-code-audit/SKILL.md +233 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-senior-code-audit/references/audit-checklist.md +369 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-senior-code-cookbook/SKILL.md +288 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-senior-code-cookbook/references/engineering-cookbook.md +489 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-soul-principles/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-task-codex-executor/SKILL.md +86 -0
- package/dist/runtime/discipline/skills/aria-cognition/aristotle-engine/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/cross-domain-24/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/deepsoul-emotional/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/fitrah-guard/SKILL.md +78 -0
- package/dist/runtime/discipline/skills/aria-cognition/ghazali-8lens/SKILL.md +227 -29
- package/dist/runtime/discipline/skills/aria-cognition/ghazali-8lens/references/ghazali-8lens-cookbook.md +797 -0
- package/dist/runtime/discipline/skills/aria-cognition/ijtihad-novel/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/ilham-intuition/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/never-guess/SKILL.md +77 -0
- package/dist/runtime/discipline/skills/aria-cognition/noor-recognition/SKILL.md +45 -0
- package/dist/runtime/discipline/skills/aria-cognition/qiyas-analogy/SKILL.md +174 -14
- package/dist/runtime/discipline/skills/aria-cognition/ruh-basis/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/tadabbur/SKILL.md +506 -0
- package/dist/runtime/discipline/skills/aria-cognition/tadabbur/references/tadabbur-cookbook.md +921 -0
- package/dist/runtime/discipline/skills/aria-cognition/tadabbur-ops/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/tafakkur/SKILL.md +104 -0
- package/dist/runtime/doctrine_trigger_map.json +236 -25
- package/dist/runtime/embedded-public-key.mjs +27 -0
- package/dist/runtime/gated-ledger.mjs +41 -14
- package/dist/runtime/harness-daemon.mjs +85 -10
- package/dist/runtime/hive-wal-publisher.mjs +292 -0
- package/dist/runtime/hooks/README.md +58 -0
- package/dist/runtime/hooks/aria-agent-handoff.mjs +147 -2
- package/dist/runtime/hooks/aria-agent-ledger-merge.mjs +31 -7
- package/dist/runtime/hooks/aria-architect-fallback.mjs +10 -2
- package/dist/runtime/hooks/aria-claim-evidence-stop-gate.mjs +240 -0
- package/dist/runtime/hooks/aria-cognition-substrate-binding.mjs +84 -10
- package/dist/runtime/hooks/aria-first-class-coach.mjs +305 -10
- package/dist/runtime/hooks/aria-harness-via-sdk.mjs +93 -16
- package/dist/runtime/hooks/aria-import-resolution-gate.mjs +106 -20
- package/dist/runtime/hooks/aria-outcome-record.mjs +56 -20
- package/dist/runtime/hooks/aria-pre-emit-autoload.mjs +1809 -0
- package/dist/runtime/hooks/aria-pre-emit-autoload.mjs.before-orchestration-redesign +1400 -0
- package/dist/runtime/hooks/aria-pre-emit-dryrun.mjs +22 -3
- package/dist/runtime/hooks/aria-pre-text-gate.mjs +11 -2
- package/dist/runtime/hooks/aria-pre-tool-gate.mjs +477 -81
- package/dist/runtime/hooks/aria-pre-tool-use.mjs +70 -6
- package/dist/runtime/hooks/aria-preprompt-consult.mjs +23 -4
- package/dist/runtime/hooks/aria-repo-doctrine-gate.mjs +29 -3
- package/dist/runtime/hooks/aria-stop-gate.mjs +585 -76
- package/dist/runtime/hooks/aria-trigger-autolearn.mjs +17 -3
- package/dist/runtime/hooks/aria-universal-turn-packet.mjs +1165 -0
- package/dist/runtime/hooks/aria-userprompt-abandon-detect.mjs +9 -1
- package/dist/runtime/hooks/canonical-settings-block.json +172 -0
- package/dist/runtime/hooks/codex-native/aria-harness-ticker-sidecar.mjs +92 -0
- package/dist/runtime/hooks/codex-native/aria-hive-wal-consumer.mjs +86 -0
- package/dist/runtime/hooks/codex-native/aria-live-ticker.mjs +38 -0
- package/dist/runtime/hooks/codex-native/aria-post-tool-use.mjs +236 -0
- package/dist/runtime/hooks/codex-native/aria-pre-tool-use.mjs +362 -0
- package/dist/runtime/hooks/codex-native/aria-stop.mjs +691 -0
- package/dist/runtime/hooks/codex-native/aria-userprompt-submit.mjs +623 -0
- package/dist/runtime/hooks/codex-native/atlas-session-context.mjs +121 -0
- package/dist/runtime/hooks/codex-native/lib/evaluate-with-kernel.mjs +257 -0
- package/dist/runtime/hooks/codex-native/lib/hive-wal-consumer.mjs +452 -0
- package/dist/runtime/hooks/codex-native/lib/kernel/deterministic-cognitive-kernel.mjs +914 -0
- package/dist/runtime/hooks/codex-native/lib/project-boundary-cognition.mjs +143 -0
- package/dist/runtime/hooks/codex-native/lib/runtime-client.mjs +3567 -0
- package/dist/runtime/hooks/codex-native/lib/task-project-ledger.mjs +294 -0
- package/dist/runtime/hooks/doctrine_trigger_map.json +236 -25
- package/dist/runtime/hooks/doctrine_trigger_map.schema.json +46 -0
- package/dist/runtime/hooks/install.sh +84 -0
- package/dist/runtime/hooks/lib/action-ledger-core.mjs +269 -0
- package/dist/runtime/hooks/lib/aria-gate-ledger.mjs +143 -0
- package/dist/runtime/hooks/lib/ast-stub-shape-detector.mjs +107 -0
- package/dist/runtime/hooks/lib/atlas-dossier-client.mjs +151 -0
- package/dist/runtime/hooks/lib/atlas-orchestrator-postwire.mjs +221 -0
- package/dist/runtime/hooks/lib/canonical-lenses.mjs +83 -6
- package/dist/runtime/hooks/lib/coach-intent-classifier.mjs +248 -0
- package/dist/runtime/hooks/lib/cognitive-block-parser.mjs +111 -0
- package/dist/runtime/hooks/lib/doctrine-trigger-map-loader.mjs +137 -0
- package/dist/runtime/hooks/lib/domain-output-quality.mjs +132 -3
- package/dist/runtime/hooks/lib/empty-catch-scanner.mjs +91 -0
- package/dist/runtime/hooks/lib/end-phase-qa-autofire.mjs +426 -0
- package/dist/runtime/hooks/lib/evaluate-with-kernel.mjs +133 -0
- package/dist/runtime/hooks/lib/first-class-coach.mjs +454 -19
- package/dist/runtime/hooks/lib/gate-audit.mjs +12 -2
- package/dist/runtime/hooks/lib/gate-loop-state.mjs +11 -2
- package/dist/runtime/hooks/lib/goal-contract-quality.mjs +302 -0
- package/dist/runtime/hooks/lib/hook-message-window.mjs +101 -9
- package/dist/runtime/hooks/lib/invocation-required-verifier.mjs +184 -0
- package/dist/runtime/hooks/lib/kernel/deterministic-cognitive-kernel.mjs +906 -0
- package/dist/runtime/hooks/lib/obligation-ledger.mjs +147 -0
- package/dist/runtime/hooks/lib/orchestration-manifest-extract.mjs +217 -0
- package/dist/runtime/hooks/lib/owner-authorizations.mjs +269 -0
- package/dist/runtime/hooks/lib/probe-discipline-scanner.mjs +142 -0
- package/dist/runtime/hooks/lib/project-boundary-cognition.mjs +143 -0
- package/dist/runtime/hooks/lib/recovery-context.mjs +151 -0
- package/dist/runtime/hooks/lib/recovery-template-loader.mjs +154 -0
- package/dist/runtime/hooks/lib/self-doctrine-check.mjs +321 -0
- package/dist/runtime/hooks/lib/sensitive-shape-detector.mjs +64 -0
- package/dist/runtime/hooks/lib/skill-autoload-gate-impl.mjs +226 -1
- package/dist/runtime/hooks/lib/stop-hook-protocol.mjs +166 -0
- package/dist/runtime/hooks/lib/surface-caught.mjs +94 -0
- package/dist/runtime/hooks/recovery-templates/force-reauthor.md +67 -0
- package/dist/runtime/hooks/recovery-templates/handoff-recovery.md +25 -0
- package/dist/runtime/hooks/scripts/check-hard-risk-prefix.mjs +99 -0
- package/dist/runtime/hooks/skills/aria-conversational-doctrine-discipline/SKILL.md +101 -0
- package/dist/runtime/hooks/test-aria-preturn-memory-gate.mjs +2 -2
- package/dist/runtime/hooks/test-tier-lens-labeling.mjs +14 -3
- package/dist/runtime/lib/evaluate-with-kernel.mjs +133 -0
- package/dist/runtime/lib/kernel/deterministic-cognitive-kernel.mjs +906 -0
- package/dist/runtime/local-phase.mjs +10 -5
- package/dist/runtime/manifest.json +8 -8
- package/dist/runtime/packet-verifier.mjs +166 -0
- package/dist/runtime/provider-proxy.mjs +13 -0
- package/dist/runtime/quality-enforcer.mjs +40 -23
- package/dist/runtime/runtime-rails/registry.mjs +252 -0
- package/dist/runtime/sdk/BUNDLED.json +2 -2
- package/dist/runtime/sdk/index.d.ts +119 -4
- package/dist/runtime/sdk/index.js +138 -12
- package/dist/runtime/sdk/index.js.map +1 -1
- package/dist/runtime/service.mjs +8036 -764
- package/dist/runtime/sub-agent-enforcer.mjs +201 -0
- package/dist/runtime/task-project-ledger.mjs +5 -1
- package/dist/sdk/BUNDLED.json +2 -2
- package/dist/sdk/index.d.ts +119 -4
- package/dist/sdk/index.js +138 -12
- package/dist/sdk/index.js.map +1 -1
- package/hooks/README.md +58 -0
- package/hooks/aria-agent-handoff.mjs +147 -2
- package/hooks/aria-agent-ledger-merge.mjs +31 -7
- package/hooks/aria-architect-fallback.mjs +10 -2
- package/hooks/aria-claim-evidence-stop-gate.mjs +240 -0
- package/hooks/aria-cognition-substrate-binding.mjs +84 -10
- package/hooks/aria-first-class-coach.mjs +305 -10
- package/hooks/aria-harness-via-sdk.mjs +93 -16
- package/hooks/aria-import-resolution-gate.mjs +106 -20
- package/hooks/aria-outcome-record.mjs +56 -20
- package/hooks/aria-pre-emit-autoload.mjs +1809 -0
- package/hooks/aria-pre-emit-autoload.mjs.before-orchestration-redesign +1400 -0
- package/hooks/aria-pre-emit-dryrun.mjs +22 -3
- package/hooks/aria-pre-text-gate.mjs +11 -2
- package/hooks/aria-pre-tool-gate.mjs +477 -81
- package/hooks/aria-pre-tool-use.mjs +70 -6
- package/hooks/aria-preprompt-consult.mjs +23 -4
- package/hooks/aria-repo-doctrine-gate.mjs +29 -3
- package/hooks/aria-stop-gate.mjs +585 -76
- package/hooks/aria-trigger-autolearn.mjs +17 -3
- package/hooks/aria-universal-turn-packet.mjs +1165 -0
- package/hooks/aria-userprompt-abandon-detect.mjs +9 -1
- package/hooks/canonical-settings-block.json +172 -0
- package/hooks/codex-native/aria-harness-ticker-sidecar.mjs +92 -0
- package/hooks/codex-native/aria-hive-wal-consumer.mjs +86 -0
- package/hooks/codex-native/aria-live-ticker.mjs +38 -0
- package/hooks/codex-native/aria-post-tool-use.mjs +236 -0
- package/hooks/codex-native/aria-pre-tool-use.mjs +362 -0
- package/hooks/codex-native/aria-stop.mjs +691 -0
- package/hooks/codex-native/aria-userprompt-submit.mjs +623 -0
- package/hooks/codex-native/atlas-session-context.mjs +121 -0
- package/hooks/codex-native/lib/evaluate-with-kernel.mjs +257 -0
- package/hooks/codex-native/lib/hive-wal-consumer.mjs +452 -0
- package/hooks/codex-native/lib/kernel/deterministic-cognitive-kernel.mjs +914 -0
- package/hooks/codex-native/lib/project-boundary-cognition.mjs +143 -0
- package/hooks/codex-native/lib/runtime-client.mjs +3567 -0
- package/hooks/codex-native/lib/task-project-ledger.mjs +294 -0
- package/hooks/doctrine_trigger_map.json +236 -25
- package/hooks/doctrine_trigger_map.schema.json +46 -0
- package/hooks/install.sh +84 -0
- package/hooks/lib/action-ledger-core.mjs +269 -0
- package/hooks/lib/aria-gate-ledger.mjs +143 -0
- package/hooks/lib/ast-stub-shape-detector.mjs +107 -0
- package/hooks/lib/atlas-dossier-client.mjs +151 -0
- package/hooks/lib/atlas-orchestrator-postwire.mjs +221 -0
- package/hooks/lib/canonical-lenses.mjs +83 -6
- package/hooks/lib/coach-intent-classifier.mjs +248 -0
- package/hooks/lib/cognitive-block-parser.mjs +111 -0
- package/hooks/lib/doctrine-trigger-map-loader.mjs +137 -0
- package/hooks/lib/domain-output-quality.mjs +132 -3
- package/hooks/lib/empty-catch-scanner.mjs +91 -0
- package/hooks/lib/end-phase-qa-autofire.mjs +426 -0
- package/hooks/lib/evaluate-with-kernel.mjs +133 -0
- package/hooks/lib/first-class-coach.mjs +454 -19
- package/hooks/lib/gate-audit.mjs +12 -2
- package/hooks/lib/gate-loop-state.mjs +11 -2
- package/hooks/lib/goal-contract-quality.mjs +302 -0
- package/hooks/lib/hook-message-window.mjs +101 -9
- package/hooks/lib/invocation-required-verifier.mjs +184 -0
- package/hooks/lib/kernel/deterministic-cognitive-kernel.mjs +906 -0
- package/hooks/lib/obligation-ledger.mjs +147 -0
- package/hooks/lib/orchestration-manifest-extract.mjs +217 -0
- package/hooks/lib/owner-authorizations.mjs +269 -0
- package/hooks/lib/probe-discipline-scanner.mjs +142 -0
- package/hooks/lib/project-boundary-cognition.mjs +143 -0
- package/hooks/lib/recovery-context.mjs +151 -0
- package/hooks/lib/recovery-template-loader.mjs +154 -0
- package/hooks/lib/self-doctrine-check.mjs +321 -0
- package/hooks/lib/sensitive-shape-detector.mjs +64 -0
- package/hooks/lib/skill-autoload-gate-impl.mjs +226 -1
- package/hooks/lib/stop-hook-protocol.mjs +166 -0
- package/hooks/lib/surface-caught.mjs +94 -0
- package/hooks/recovery-templates/force-reauthor.md +67 -0
- package/hooks/recovery-templates/handoff-recovery.md +25 -0
- package/hooks/scripts/check-hard-risk-prefix.mjs +99 -0
- package/hooks/skills/aria-conversational-doctrine-discipline/SKILL.md +101 -0
- package/hooks/test-aria-preturn-memory-gate.mjs +2 -2
- package/hooks/test-tier-lens-labeling.mjs +14 -3
- package/opencode-plugins/harness-context/index.js +39 -6
- package/opencode-plugins/harness-context/task-project-ledger.mjs +5 -1
- package/opencode-plugins/harness-gate/index.js +36 -0
- package/opencode-plugins/harness-gate/lib/atlas-dossier-client.js +1 -0
- package/opencode-plugins/harness-gate/lib/recovery-grants.js +79 -0
- package/opencode-plugins/harness-outcome/index.js +12 -0
- package/opencode-plugins/harness-stop/index.js +97 -2
- package/opencode-plugins/harness-stop/lib/atlas-dossier-client.js +1 -0
- package/opencode-plugins/harness-stop/lib/domain-output-quality.js +15 -2
- package/opencode-plugins/lib/coach.js +148 -0
- package/package.json +71 -5
- package/runtime-src/coach-kernel.mjs +144 -7
- package/runtime-src/codex-bridge.mjs +254 -8
- package/runtime-src/embedded-public-key.mjs +27 -0
- package/runtime-src/gated-ledger.mjs +41 -14
- package/runtime-src/harness-daemon.mjs +85 -10
- package/runtime-src/hive-wal-publisher.mjs +292 -0
- package/runtime-src/lib/evaluate-with-kernel.mjs +133 -0
- package/runtime-src/lib/kernel/deterministic-cognitive-kernel.mjs +906 -0
- package/runtime-src/local-phase.mjs +10 -5
- package/runtime-src/packet-verifier.mjs +166 -0
- package/runtime-src/provider-proxy.mjs +13 -0
- package/runtime-src/quality-enforcer.mjs +40 -23
- package/runtime-src/runtime-rails/registry.mjs +252 -0
- package/runtime-src/service.mjs +8036 -764
- package/runtime-src/sub-agent-enforcer.mjs +201 -0
- package/scripts/aria-ledger-append.mjs +337 -0
- package/scripts/aria-task-cheap-worker-dispatch.mjs +234 -0
- package/scripts/audit-of-audit-prior-tasks.mjs +194 -0
- package/scripts/audit-of-audit-this-turn.mjs +116 -0
- package/scripts/bundle-sdk.mjs +31 -5
- package/scripts/check-cli-wrapper-provider-contract.mjs +160 -0
- package/scripts/check-client-compatibility.mjs +15 -5
- package/scripts/check-client-smoke.mjs +297 -0
- package/scripts/check-codex-orchestrator-adoption.mjs +150 -0
- package/scripts/check-glm-env-wired.mjs +131 -0
- package/scripts/check-hive-local-storage-contract.mjs +91 -0
- package/scripts/check-hook-mirror.mjs +150 -0
- package/scripts/check-install-sh-drift.mjs +152 -0
- package/scripts/check-kernel-sync.mjs +101 -0
- package/scripts/check-package-artifact.mjs +152 -0
- package/scripts/check-registry-mirror.mjs +71 -0
- package/scripts/drain-owner-airtable-sync-queue.mjs +287 -0
- package/scripts/export-owner-status-sheets.mjs +589 -0
- package/scripts/live-sidecar-receipt-canary.mjs +347 -0
- package/scripts/qiyas-tadabbur-model-matrix.mjs +970 -0
- package/scripts/quality-ab-live-provider.mjs +913 -0
- package/scripts/self-test-action-ledger-core.mjs +190 -0
- package/scripts/self-test-approval-receipt-binding.mjs +122 -0
- package/scripts/self-test-autofire-quality-output.mjs +110 -0
- package/scripts/self-test-claude-code-action-ledger.mjs +132 -0
- package/scripts/self-test-claude-code-mechanical-autofire-hive.mjs +138 -0
- package/scripts/self-test-claude-code-mechanical-autofire.mjs +234 -0
- package/scripts/self-test-codebase-awareness-atlas-delta.mjs +159 -0
- package/scripts/self-test-codebase-awareness-delta-ingest.mjs +179 -0
- package/scripts/self-test-codex-live-hook-parity.mjs +84 -0
- package/scripts/self-test-codex-native-action-ledger.mjs +167 -0
- package/scripts/self-test-codex-native-hook-json-contract.mjs +74 -0
- package/scripts/self-test-codex-orchestrator-continuity.mjs +113 -0
- package/scripts/self-test-codex-readable-recovery.mjs +94 -0
- package/scripts/self-test-codex-self-harness.mjs +538 -0
- package/scripts/self-test-compiled-workunit.mjs +214 -0
- package/scripts/self-test-continuation-output-smoke.mjs +101 -0
- package/scripts/self-test-cross-cli-fleet-ticker.mjs +85 -0
- package/scripts/self-test-cross-cli-hive-adoption.mjs +125 -0
- package/scripts/self-test-cross-cli-hive-learning.mjs +146 -0
- package/scripts/self-test-cross-phase-tool-failure.mjs +110 -0
- package/scripts/self-test-cross-surface-action-ledger.mjs +149 -0
- package/scripts/self-test-end-of-phase-qa-court.mjs +616 -0
- package/scripts/self-test-evaluate-with-kernel.mjs +111 -0
- package/scripts/self-test-first-class-output-delta-proof.mjs +307 -0
- package/scripts/self-test-goal-contract-output-qa.mjs +73 -0
- package/scripts/self-test-goal-contract.mjs +35 -0
- package/scripts/self-test-governed-adapters.mjs +105 -0
- package/scripts/self-test-governed-surface-runner.mjs +198 -0
- package/scripts/self-test-harness-gates.mjs +15 -12
- package/scripts/self-test-harness-ticker-sidecar.mjs +153 -0
- package/scripts/self-test-hive-org-kernel.mjs +233 -0
- package/scripts/self-test-hive-session-coordination.mjs +156 -0
- package/scripts/self-test-hive-wal-consumer.mjs +111 -0
- package/scripts/self-test-kernel-a3-a4-selection.mjs +179 -0
- package/scripts/self-test-ledger-append.mjs +175 -0
- package/scripts/self-test-live-codex-posttool-packet-smoke.mjs +111 -0
- package/scripts/self-test-live-codex-pretool-packet-smoke.mjs +101 -0
- package/scripts/self-test-live-codex-stop-qa-kernel-smoke.mjs +43 -0
- package/scripts/self-test-live-wrapper-substrate-inventory.mjs +149 -0
- package/scripts/self-test-local-main-sync-script.mjs +47 -0
- package/scripts/self-test-mechanical-autofire-resolver.mjs +296 -0
- package/scripts/self-test-no-consult-cognitive-skills-output.mjs +135 -0
- package/scripts/self-test-owner-airtable-sync-queue.mjs +196 -0
- package/scripts/self-test-owner-airtable-sync.mjs +181 -0
- package/scripts/self-test-owner-sheets-action-ledger.mjs +100 -0
- package/scripts/self-test-production-preflight.mjs +78 -0
- package/scripts/self-test-project-boundary-cognition.mjs +79 -0
- package/scripts/self-test-qa-exec-kernel.mjs +34 -0
- package/scripts/self-test-qa-recovery-learning-loop.mjs +113 -0
- package/scripts/self-test-qiyas-label-alignment.mjs +94 -0
- package/scripts/self-test-recovery-context.mjs +110 -0
- package/scripts/self-test-repo-guard.mjs +10 -0
- package/scripts/self-test-runtime-health-self-heal.mjs +161 -0
- package/scripts/self-test-runtime-postcondition.mjs +70 -0
- package/scripts/self-test-soul-precommit-hook.mjs +39 -0
- package/scripts/self-test-stop-gate-kernel-guards.mjs +185 -0
- package/scripts/self-test-stop-gate.mjs +128 -0
- package/scripts/self-test-substrate-kernel-execution-receipt.mjs +130 -0
- package/scripts/self-test-substrate-open-skill-floor.mjs +87 -0
- package/scripts/self-test-substrate-output-quality-eval.mjs +171 -0
- package/scripts/self-test-task-closeout-drift.mjs +97 -0
- package/scripts/self-test-task-project-ledger-readiness.mjs +43 -0
- package/scripts/self-test-task-runner-phase-consumer.mjs +134 -0
- package/scripts/self-test-task-worker-lane.mjs +256 -0
- package/scripts/self-test-turn-substrate-qa-kernel.mjs +188 -0
- package/scripts/self-test-universal-action-capture.mjs +153 -0
- package/scripts/self-test-universal-turn-packet-entrypoints.mjs +252 -0
- package/scripts/self-test-universal-turn-packet.mjs +320 -0
- package/scripts/session-quality-backfill.mjs +253 -0
- package/scripts/smoke-autofire-100-prompts.mjs +481 -0
- package/scripts/sync-local-main-on-task-complete.mjs +278 -0
- package/scripts/sync-owner-status-airtable.mjs +1158 -0
- package/scripts/validate-skill-prompts.mjs +12 -1
- package/scripts/verify-codex-native-mirror.mjs +262 -0
- package/skills/34-frameworks-unified/SKILL.md +42 -0
- package/skills/api-design/SKILL.md +123 -0
- package/skills/architecture-decision/SKILL.md +105 -0
- package/skills/aria-aristotle-cognitives/SKILL.md +128 -0
- package/skills/aria-aristotle-intra-phase/SKILL.md +99 -0
- package/skills/aria-aristotle-post-phase/SKILL.md +116 -0
- package/skills/aria-aristotle-pre-phase/SKILL.md +117 -0
- package/skills/aria-axioms-first-principles/SKILL.md +202 -0
- package/skills/aria-axioms-first-principles/agents/openai.yaml +4 -0
- package/skills/aria-axioms-first-principles/references/source-map.md +130 -0
- package/skills/aria-chat/SKILL.md +84 -0
- package/skills/aria-chat/scripts/aria-chat.sh +57 -0
- package/skills/aria-cognition/34-frameworks-unified/SKILL.md +42 -0
- package/skills/aria-cognition/aria-aristotle-cognitives/SKILL.md +128 -0
- package/skills/aria-cognition/aria-aristotle-intra-phase/SKILL.md +99 -0
- package/skills/aria-cognition/aria-aristotle-post-phase/SKILL.md +118 -0
- package/skills/aria-cognition/aria-aristotle-pre-phase/SKILL.md +117 -0
- package/skills/aria-cognition/aria-axioms-first-principles/SKILL.md +202 -0
- package/skills/aria-cognition/aria-axioms-first-principles/agents/openai.yaml +4 -0
- package/skills/aria-cognition/aria-axioms-first-principles/references/source-map.md +130 -0
- package/skills/aria-cognition/aria-backend-architect/SKILL.md +124 -0
- package/skills/aria-cognition/aria-backend-architect/references/backend-cookbook.md +417 -0
- package/skills/aria-cognition/aria-business-audit/SKILL.md +133 -0
- package/skills/aria-cognition/aria-business-audit/references/audit-cookbook.md +247 -0
- package/skills/aria-cognition/aria-business-frame/SKILL.md +138 -0
- package/skills/aria-cognition/aria-business-frame/references/business-cookbook.md +154 -0
- package/skills/aria-cognition/aria-chat/SKILL.md +84 -0
- package/skills/aria-cognition/aria-chat/scripts/aria-chat.sh +57 -0
- package/skills/aria-cognition/aria-cognition-autofire/SKILL.md +137 -0
- package/skills/aria-cognition/aria-cognition-batch/SKILL.md +264 -0
- package/skills/aria-cognition/aria-decision-mizan/SKILL.md +136 -0
- package/skills/aria-cognition/aria-decision-mizan/references/decision-frameworks.md +287 -0
- package/skills/aria-cognition/aria-first-class-operating-contract/SKILL.md +104 -0
- package/skills/aria-cognition/aria-frontend-architect/SKILL.md +123 -0
- package/skills/aria-cognition/aria-frontend-architect/references/frontend-cookbook.md +358 -0
- package/skills/aria-cognition/aria-fullstack-orchestrator/SKILL.md +127 -0
- package/skills/aria-cognition/aria-fullstack-orchestrator/references/fullstack-cookbook.md +383 -0
- package/skills/aria-cognition/aria-gtm-architect/SKILL.md +126 -0
- package/skills/aria-cognition/aria-gtm-architect/references/gtm-cookbook.md +235 -0
- package/skills/aria-cognition/aria-harness-deploy/SKILL.md +145 -0
- package/skills/aria-cognition/aria-harness-no-stripping/SKILL.md +135 -0
- package/skills/aria-cognition/aria-harness-onboarding/SKILL.md +130 -0
- package/skills/aria-cognition/aria-harness-output-discipline/SKILL.md +120 -0
- package/skills/aria-cognition/aria-harness-substrate-binding/SKILL.md +139 -0
- package/skills/aria-cognition/aria-http-harness-client/SKILL.md +85 -0
- package/skills/aria-cognition/aria-http-harness-client/scripts/smoke.mjs +47 -0
- package/skills/aria-cognition/aria-k8s-deploy/SKILL.md +174 -0
- package/skills/aria-cognition/aria-k8s-deploy/agents/openai.yaml +3 -0
- package/skills/aria-cognition/aria-ladduniframe/SKILL.md +60 -0
- package/skills/aria-cognition/aria-ledger-fleet-execution/SKILL.md +126 -0
- package/skills/aria-cognition/aria-live-ops/SKILL.md +54 -0
- package/skills/aria-cognition/aria-mac-ssh-ops/SKILL.md +100 -0
- package/skills/aria-cognition/aria-memory-index/SKILL.md +42 -0
- package/skills/aria-cognition/aria-noor-cognitives/SKILL.md +120 -0
- package/skills/aria-cognition/aria-ops/SKILL.md +60 -0
- package/skills/aria-cognition/aria-ops/references/live-endpoints.md +59 -0
- package/skills/aria-cognition/aria-quality-audit/SKILL.md +133 -0
- package/skills/aria-cognition/aria-readable-output/SKILL.md +239 -0
- package/skills/aria-cognition/aria-readable-output/references/layout-cookbook.md +366 -0
- package/skills/aria-cognition/aria-reasoning/SKILL.md +67 -0
- package/skills/aria-cognition/aria-reasoning/references/core-principles.md +42 -0
- package/skills/aria-cognition/aria-repo-audit/SKILL.md +135 -0
- package/skills/aria-cognition/aria-repo-audit/references/repo-audit-cookbook.md +375 -0
- package/skills/aria-cognition/aria-research-orchestrator/SKILL.md +138 -0
- package/skills/aria-cognition/aria-research-orchestrator/references/research-patterns.md +270 -0
- package/skills/aria-cognition/aria-retention-engine/SKILL.md +120 -0
- package/skills/aria-cognition/aria-retention-engine/references/retention-cookbook.md +271 -0
- package/skills/aria-cognition/aria-revenue-engine/SKILL.md +128 -0
- package/skills/aria-cognition/aria-revenue-engine/references/revenue-cookbook.md +227 -0
- package/skills/aria-cognition/aria-senior-code-audit/SKILL.md +233 -0
- package/skills/aria-cognition/aria-senior-code-audit/references/audit-checklist.md +369 -0
- package/skills/aria-cognition/aria-senior-code-cookbook/SKILL.md +288 -0
- package/skills/aria-cognition/aria-senior-code-cookbook/references/engineering-cookbook.md +489 -0
- package/skills/aria-cognition/aria-soul-principles/SKILL.md +42 -0
- package/skills/aria-cognition/aria-task-codex-executor/SKILL.md +86 -0
- package/skills/aria-cognition/aristotle-engine/SKILL.md +42 -0
- package/skills/aria-cognition/cross-domain-24/SKILL.md +42 -0
- package/skills/aria-cognition/deepsoul-emotional/SKILL.md +42 -0
- package/skills/aria-cognition/fitrah-guard/SKILL.md +78 -0
- package/skills/aria-cognition/ghazali-8lens/SKILL.md +227 -29
- package/skills/aria-cognition/ghazali-8lens/references/ghazali-8lens-cookbook.md +797 -0
- package/skills/aria-cognition/ijtihad-novel/SKILL.md +42 -0
- package/skills/aria-cognition/ilham-intuition/SKILL.md +42 -0
- package/skills/aria-cognition/never-guess/SKILL.md +77 -0
- package/skills/aria-cognition/noor-recognition/SKILL.md +45 -0
- package/skills/aria-cognition/qiyas-analogy/SKILL.md +174 -14
- package/skills/aria-cognition/ruh-basis/SKILL.md +42 -0
- package/skills/aria-cognition/tadabbur/SKILL.md +506 -0
- package/skills/aria-cognition/tadabbur/references/tadabbur-cookbook.md +921 -0
- package/skills/aria-cognition/tadabbur-ops/SKILL.md +42 -0
- package/skills/aria-cognition/tafakkur/SKILL.md +104 -0
- package/skills/aria-cognition-autofire/SKILL.md +109 -0
- package/skills/aria-cognition-batch/SKILL.md +264 -0
- package/skills/aria-conversational-doctrine-discipline/SKILL.md +125 -0
- package/skills/aria-essence/SKILL.md +81 -0
- package/skills/aria-essence/references/domain-matrix.md +80 -0
- package/skills/aria-essence/references/evolution-loop.md +30 -0
- package/skills/aria-essence/references/readable-cognition.md +27 -0
- package/skills/aria-first-class-operating-contract/SKILL.md +104 -0
- package/skills/aria-forge-guardrails/SKILL.md +53 -0
- package/skills/aria-forge-guardrails/references/checklist.md +31 -0
- package/skills/aria-harness-deploy/SKILL.md +145 -0
- package/skills/aria-harness-no-stripping/SKILL.md +135 -0
- package/skills/aria-harness-onboarding/SKILL.md +130 -0
- package/skills/aria-harness-output-discipline/SKILL.md +120 -0
- package/skills/aria-harness-substrate-binding/SKILL.md +139 -0
- package/skills/aria-http-harness-client/SKILL.md +85 -0
- package/skills/aria-http-harness-client/scripts/smoke.mjs +47 -0
- package/skills/aria-k8s-deploy/SKILL.md +174 -0
- package/skills/aria-k8s-deploy/agents/openai.yaml +3 -0
- package/skills/aria-ladduniframe/SKILL.md +60 -0
- package/skills/aria-ledger-fleet-execution/SKILL.md +126 -0
- package/skills/aria-live-ops/SKILL.md +54 -0
- package/skills/aria-mac-ssh-ops/SKILL.md +100 -0
- package/skills/aria-memory-index/SKILL.md +42 -0
- package/skills/aria-noor-cognitives/SKILL.md +120 -0
- package/skills/aria-ops/SKILL.md +60 -0
- package/skills/aria-ops/references/live-endpoints.md +59 -0
- package/skills/aria-quality-audit/SKILL.md +133 -0
- package/skills/aria-reasoning/SKILL.md +67 -0
- package/skills/aria-reasoning/references/core-principles.md +42 -0
- package/skills/aria-repo-doctrine/SKILL.md +57 -0
- package/skills/aria-soul-principles/SKILL.md +42 -0
- package/skills/aria-task-codex-executor/SKILL.md +86 -0
- package/skills/aristotle-engine/SKILL.md +42 -0
- package/skills/ci-cd-pipeline/SKILL.md +116 -0
- package/skills/code-review/SKILL.md +131 -0
- package/skills/cross-domain-24/SKILL.md +42 -0
- package/skills/database-design/SKILL.md +124 -0
- package/skills/deepsoul-emotional/SKILL.md +42 -0
- package/skills/deno-kv-raft-pubsub/SKILL.md +561 -0
- package/skills/deno-kv-raft-pubsub/reference/maelstrom-integration.md +393 -0
- package/skills/deno-kv-raft-pubsub/reference/pubsub-api.md +376 -0
- package/skills/deno-kv-raft-pubsub/reference/raft-spec.md +402 -0
- package/skills/deno-kv-raft-pubsub/reference/state-machine.md +182 -0
- package/skills/error-handling/SKILL.md +159 -0
- package/skills/firecrawl/SKILL.md +165 -0
- package/skills/firecrawl/rules/install.md +82 -0
- package/skills/firecrawl/rules/security.md +26 -0
- package/skills/firecrawl-agent/SKILL.md +86 -0
- package/skills/firecrawl-build-interact/SKILL.md +96 -0
- package/skills/firecrawl-build-onboarding/SKILL.md +131 -0
- package/skills/firecrawl-build-onboarding/references/auth-flow.md +39 -0
- package/skills/firecrawl-build-onboarding/references/project-setup.md +20 -0
- package/skills/firecrawl-build-onboarding/references/sdk-installation.md +17 -0
- package/skills/firecrawl-build-scrape/SKILL.md +97 -0
- package/skills/firecrawl-build-search/SKILL.md +97 -0
- package/skills/firecrawl-clone/SKILL.md +419 -0
- package/skills/firecrawl-crawl/SKILL.md +87 -0
- package/skills/firecrawl-download/SKILL.md +98 -0
- package/skills/firecrawl-interact/SKILL.md +112 -0
- package/skills/firecrawl-map/SKILL.md +79 -0
- package/skills/firecrawl-scrape/SKILL.md +97 -0
- package/skills/firecrawl-search/SKILL.md +88 -0
- package/skills/fitrah-guard/SKILL.md +78 -0
- package/skills/forge-quality-rules/SKILL.md +61 -0
- package/skills/ghazali-8lens/SKILL.md +56 -0
- package/skills/ijtihad-novel/SKILL.md +42 -0
- package/skills/ilham-intuition/SKILL.md +42 -0
- package/skills/imagegen/LICENSE.txt +201 -0
- package/skills/imagegen/SKILL.md +374 -0
- package/skills/imagegen/agents/openai.yaml +6 -0
- package/skills/imagegen/assets/imagegen-small.svg +5 -0
- package/skills/imagegen/assets/imagegen.png +0 -0
- package/skills/imagegen/references/cli.md +242 -0
- package/skills/imagegen/references/codex-network.md +33 -0
- package/skills/imagegen/references/image-api.md +90 -0
- package/skills/imagegen/references/prompting.md +118 -0
- package/skills/imagegen/references/sample-prompts.md +433 -0
- package/skills/imagegen/scripts/image_gen.py +995 -0
- package/skills/imagegen/scripts/remove_chroma_key.py +440 -0
- package/skills/istiqra-induction/SKILL.md +44 -0
- package/skills/ladunni-22/SKILL.md +53 -0
- package/skills/mizan/SKILL.md +90 -0
- package/skills/nadia/SKILL.md +56 -0
- package/skills/nadia-psi/SKILL.md +56 -0
- package/skills/never-guess/SKILL.md +75 -0
- package/skills/noor-recognition/SKILL.md +45 -0
- package/skills/observability/SKILL.md +133 -0
- package/skills/openai-docs/LICENSE.txt +201 -0
- package/skills/openai-docs/SKILL.md +100 -0
- package/skills/openai-docs/agents/openai.yaml +14 -0
- package/skills/openai-docs/assets/openai-small.svg +3 -0
- package/skills/openai-docs/assets/openai.png +0 -0
- package/skills/openai-docs/references/latest-model.md +37 -0
- package/skills/openai-docs/references/prompting-guide.md +244 -0
- package/skills/openai-docs/references/upgrade-guide.md +181 -0
- package/skills/openai-docs/scripts/resolve-latest-model-info.js +147 -0
- package/skills/pdf/LICENSE.txt +201 -0
- package/skills/pdf/SKILL.md +85 -0
- package/skills/pdf/agents/openai.yaml +5 -0
- package/skills/pdf/assets/pdf.png +0 -0
- package/skills/playwright/LICENSE.txt +201 -0
- package/skills/playwright/NOTICE.txt +14 -0
- package/skills/playwright/SKILL.md +165 -0
- package/skills/playwright/agents/openai.yaml +6 -0
- package/skills/playwright/assets/playwright-small.svg +3 -0
- package/skills/playwright/assets/playwright.png +0 -0
- package/skills/playwright/references/cli.md +116 -0
- package/skills/playwright/references/workflows.md +95 -0
- package/skills/playwright/scripts/playwright_cli.sh +25 -0
- package/skills/plugin-creator/SKILL.md +178 -0
- package/skills/plugin-creator/agents/openai.yaml +6 -0
- package/skills/plugin-creator/assets/plugin-creator-small.svg +3 -0
- package/skills/plugin-creator/assets/plugin-creator.png +0 -0
- package/skills/plugin-creator/references/plugin-json-spec.md +170 -0
- package/skills/plugin-creator/scripts/create_basic_plugin.py +301 -0
- package/skills/predictor/SKILL.md +43 -0
- package/skills/qiyas-analogy/SKILL.md +204 -0
- package/skills/refactoring/SKILL.md +137 -0
- package/skills/ruh-basis/SKILL.md +42 -0
- package/skills/security-review/SKILL.md +129 -0
- package/skills/skill-creator/SKILL.md +434 -0
- package/skills/skill-creator/agents/openai.yaml +5 -0
- package/skills/skill-creator/assets/skill-creator-small.svg +3 -0
- package/skills/skill-creator/assets/skill-creator.png +0 -0
- package/skills/skill-creator/license.txt +202 -0
- package/skills/skill-creator/references/openai_yaml.md +49 -0
- package/skills/skill-creator/scripts/generate_openai_yaml.py +226 -0
- package/skills/skill-creator/scripts/init_skill.py +400 -0
- package/skills/skill-creator/scripts/quick_validate.py +101 -0
- package/skills/skill-installer/LICENSE.txt +202 -0
- package/skills/skill-installer/SKILL.md +76 -0
- package/skills/skill-installer/agents/openai.yaml +5 -0
- package/skills/skill-installer/assets/skill-installer-small.svg +3 -0
- package/skills/skill-installer/assets/skill-installer.png +0 -0
- package/skills/skill-installer/scripts/github_utils.py +21 -0
- package/skills/skill-installer/scripts/install-skill-from-github.py +308 -0
- package/skills/skill-installer/scripts/list-skills.py +107 -0
- package/skills/skills-and-hooks-reference/SKILL.md +196 -0
- package/skills/soul-domains/SKILL.md +43 -0
- package/skills/tadabbur/SKILL.md +232 -0
- package/skills/tadabbur-ops/SKILL.md +42 -0
- package/skills/tafakkur/SKILL.md +104 -0
- package/skills/testing-strategy/SKILL.md +122 -0
- package/src/action-ledger-core.ts +1054 -0
- package/src/chat.ts +5 -6
- package/src/codebase-scanner.ts +2 -0
- package/src/connectors/claude-code.ts +149 -12
- package/src/connectors/codebase-awareness.ts +325 -25
- package/src/connectors/codex.ts +1225 -41
- package/src/connectors/cursor.ts +8 -0
- package/src/connectors/governed-adapter.ts +174 -0
- package/src/connectors/opencode.ts +18 -2
- package/src/connectors/repo-guard.ts +24 -12
- package/src/connectors/runtime.ts +99 -2
- package/src/connectors/shell.ts +125 -7
- package/src/cross-cli-hive-binding.ts +290 -0
- package/src/garden-control-plane.ts +24 -1
- package/src/governed-surface-runner.ts +1227 -0
- package/src/index.ts +104 -1
- package/src/task-runner.ts +3794 -0
- package/dist/aria-connector/src/install-hooks.d.ts +0 -18
- package/dist/aria-connector/src/install-hooks.d.ts.map +0 -1
- package/dist/aria-connector/src/install-hooks.js +0 -224
- package/dist/aria-connector/src/install-hooks.js.map +0 -1
- package/dist/aria-connector/src/onboarding-wizard.d.ts +0 -5
- package/dist/aria-connector/src/onboarding-wizard.d.ts.map +0 -1
- package/dist/aria-connector/src/onboarding-wizard.js +0 -188
- package/dist/aria-connector/src/onboarding-wizard.js.map +0 -1
- package/dist/cli-0.2.38.tgz +0 -0
- package/dist/install.sh +0 -13
- package/src/__tests__/anthropic-oauth.test.ts +0 -186
- package/src/__tests__/auth-commands.test.ts +0 -132
- package/src/__tests__/owner-login.test.ts +0 -311
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
# GTM Architect Cookbook — Channel, Message, Economics Patterns
|
|
2
|
+
|
|
3
|
+
> Loaded by `aria-gtm-architect` for launch, channel, positioning, message, audience decisions.
|
|
4
|
+
> See also: [`../../aria-business-frame/references/business-cookbook.md`](../../aria-business-frame/references/business-cookbook.md) (Dunford 5-step, 7 Powers, 2025 SaaS benchmarks)
|
|
5
|
+
|
|
6
|
+
## 1. The 3-Fit Triple Diagnostic
|
|
7
|
+
|
|
8
|
+
Every GTM motion must answer all three. If any one fails, the whole motion fails — typically by month 6, not month 1.
|
|
9
|
+
|
|
10
|
+
### Channel-fit
|
|
11
|
+
**Where does this buyer make decisions?** Not where they spend time generally — where they specifically evaluate vendors / solutions of this shape.
|
|
12
|
+
|
|
13
|
+
| Buyer type | Decision channels |
|
|
14
|
+
|---|---|
|
|
15
|
+
| SMB owner (deal-shaped product) | Reddit, podcasts, founder communities, Twitter/X |
|
|
16
|
+
| Mid-market manager | LinkedIn, peer groups, vendor RFPs, conference networking |
|
|
17
|
+
| Enterprise procurement | RFP processes, analyst reports (Gartner/Forrester), peer references |
|
|
18
|
+
| Developer | GitHub, dev blogs, Hacker News, Stack Overflow, conferences |
|
|
19
|
+
| Designer | Twitter/X, Dribbble, Figma community, design newsletters |
|
|
20
|
+
| Marketer | LinkedIn, marketing podcasts, peer Slack groups |
|
|
21
|
+
|
|
22
|
+
If the channel doesn't intersect that path, no creative will save it. Diagnose channel-fit BEFORE optimizing creative.
|
|
23
|
+
|
|
24
|
+
### Message-fit
|
|
25
|
+
**Does the headline match how the buyer describes their problem in their own words?**
|
|
26
|
+
|
|
27
|
+
The diagnostic question: in the buyer's own language, what problem do they have?
|
|
28
|
+
- ❌ Bad: "automate your scheduling pipeline" (vendor language)
|
|
29
|
+
- ✅ Good: "I lose deals to no-shows" (buyer language)
|
|
30
|
+
|
|
31
|
+
### Economics-fit
|
|
32
|
+
**At the volume needed, do the unit economics work?**
|
|
33
|
+
|
|
34
|
+
| Channel | Typical CAC range | Payback | LTV/CAC ratio |
|
|
35
|
+
|---|---|---|---|
|
|
36
|
+
| Organic SEO | Low ($20-200) | 6-18 mo | 4:1 to 6:1 |
|
|
37
|
+
| Content marketing | Low-mid ($50-300) | 9-18 mo | 4:1 to 5:1 |
|
|
38
|
+
| Referral | Low ($30-200) | 6-12 mo | 4:1 to 5:1 |
|
|
39
|
+
| Outbound (SDR-led) | High ($500-5000) | 12-24 mo | 2:1 to 4:1 |
|
|
40
|
+
| Paid search | Mid-high ($100-1000) | 9-18 mo | 2:1 to 3:1 |
|
|
41
|
+
| Paid social | Variable ($30-500) | 6-12 mo | 1:1 to 3:1 |
|
|
42
|
+
| Conference / events | Very high ($1K-10K) | 18-36 mo | 1:1 to 3:1 |
|
|
43
|
+
| Partner channel | Variable | 12-24 mo | 2:1 to 5:1 |
|
|
44
|
+
|
|
45
|
+
(2024-2025 benchmarks per [SaaS Metrics Benchmark](https://www.rockingweb.com.au/saas-metrics-benchmark-report-2025))
|
|
46
|
+
|
|
47
|
+
If economics don't pencil at any channel: **the answer may be "this product needs a different price or audience before any channel works."** Don't cycle through tactics.
|
|
48
|
+
|
|
49
|
+
## 2. The One-Channel Rule (under $5M ARR)
|
|
50
|
+
|
|
51
|
+
Most companies under $5M ARR have ONE dominant channel. Forcing diversification too early dilutes the dominant channel without saving the company.
|
|
52
|
+
|
|
53
|
+
### Pattern: identify the dominant channel
|
|
54
|
+
- 60-70% of net new revenue from one channel = dominant
|
|
55
|
+
- Less than 40% from any channel = under-developed; pick one and concentrate
|
|
56
|
+
|
|
57
|
+
### Diversification timing
|
|
58
|
+
- **<$1M ARR**: 100% on dominant channel; experiments only with explicit budget caps
|
|
59
|
+
- **$1M-$5M ARR**: 70-80% dominant + 20-30% secondary tests
|
|
60
|
+
- **$5M-$20M ARR**: dominant + 2-3 secondaries with measurable contribution
|
|
61
|
+
- **$20M+ ARR**: portfolio approach; channel concentration risk becomes systemic
|
|
62
|
+
|
|
63
|
+
## 3. The April Dunford 5-Step (canonical positioning)
|
|
64
|
+
|
|
65
|
+
**Source:** [April Dunford — Quickstart Guide to Positioning](https://www.aprildunford.com/post/a-quickstart-guide-to-positioning) · [Obviously Awesome](https://www.aprildunford.com/books)
|
|
66
|
+
|
|
67
|
+
### Step 1: Understand customers who LOVE you
|
|
68
|
+
Not all customers — the lovers. Why?
|
|
69
|
+
- Run 10 customer interviews with your top NPS / longest-tenure / highest-LTV cohort
|
|
70
|
+
- Ask: "What were you doing before us? Why did you switch? What would you do if we disappeared?"
|
|
71
|
+
|
|
72
|
+
### Step 2: Identify true competitive alternatives
|
|
73
|
+
Most positioning errors flow from comparing to wrong alternative. The truth:
|
|
74
|
+
- The most common alternative is **"do nothing / status quo"**
|
|
75
|
+
- The second most common is **"build it themselves / spreadsheet-it"**
|
|
76
|
+
- A real competitor is the third — least common at most price bands
|
|
77
|
+
|
|
78
|
+
### Step 3: Isolate unique attributes
|
|
79
|
+
- What can you do that competitive alternatives can't?
|
|
80
|
+
- These are CAPABILITIES, not feature lists
|
|
81
|
+
- Phrase as "we are the only X that does Y for Z"
|
|
82
|
+
|
|
83
|
+
### Step 4: Map attributes to value
|
|
84
|
+
- Capability → benefit → outcome the customer cares about
|
|
85
|
+
- "We're the only [category] that [capability] which means you [benefit] which lets you [outcome they care about]"
|
|
86
|
+
|
|
87
|
+
### Step 5: Identify the best market frame
|
|
88
|
+
- The category/context that makes the value obvious
|
|
89
|
+
- Often the highest-leverage decision in positioning
|
|
90
|
+
- Bad: "we're a project management tool" (fights all PM tools)
|
|
91
|
+
- Good: "we're the operating system for fractional CMOs running 5+ accounts"
|
|
92
|
+
|
|
93
|
+
## 4. The 5-Question Buyer Interview (deal-loss / win analysis)
|
|
94
|
+
|
|
95
|
+
When deals stall or close, run this:
|
|
96
|
+
|
|
97
|
+
1. "When did you first realize you needed [our category]?" (uncover the trigger)
|
|
98
|
+
2. "What did you try first / before us?" (reveal real alternatives)
|
|
99
|
+
3. "When you decided to look at [our category], who else did you evaluate? Why did you pick / pass on us?"
|
|
100
|
+
4. "What would have made you choose us / made you choose someone else?"
|
|
101
|
+
5. "If you had a magic wand, what would [our category] do that no one currently does?"
|
|
102
|
+
|
|
103
|
+
### Use the answers
|
|
104
|
+
- **Triggers** → ad hooks, content topics, ICP definition
|
|
105
|
+
- **Alternatives** → who you really compete against (often "spreadsheet" or "do nothing")
|
|
106
|
+
- **Decision criteria** → message framework, sales playbook, demo structure
|
|
107
|
+
- **Magic wand** → product roadmap input
|
|
108
|
+
|
|
109
|
+
## 5. Channel test design (fail fast, learn measurably)
|
|
110
|
+
|
|
111
|
+
### The channel test contract
|
|
112
|
+
For any channel test:
|
|
113
|
+
```markdown
|
|
114
|
+
- [ ] Budget cap (hard $) named
|
|
115
|
+
- [ ] Time cap (days) named
|
|
116
|
+
- [ ] Stop-criteria named (CAC > $X, CTR < Y, CPL > $Z)
|
|
117
|
+
- [ ] Success criteria named (≥N qualified leads at CAC ≤ $X)
|
|
118
|
+
- [ ] Attribution model agreed (last-touch, first-touch, multi-touch, time-decay)
|
|
119
|
+
- [ ] Owner named
|
|
120
|
+
- [ ] Decision date named (when do we kill or scale)
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
### Common test sizes
|
|
124
|
+
- **Reddit ads**: $1-3K, 7-14 days
|
|
125
|
+
- **Google search**: $3-5K, 14-30 days (need volume for keyword learnings)
|
|
126
|
+
- **LinkedIn ads**: $5-10K, 21-30 days (high-intent B2B but expensive)
|
|
127
|
+
- **Podcast sponsorship**: $1-5K per show, measure with promo code
|
|
128
|
+
- **Newsletter sponsorship**: $500-3K, measure with UTM
|
|
129
|
+
- **Outbound SDR**: $5-15K/month for ramp; 90-day commitment
|
|
130
|
+
|
|
131
|
+
### Anti-patterns
|
|
132
|
+
- "Test" with no kill criteria (becomes a sunk-cost campaign)
|
|
133
|
+
- Multiple variables changed simultaneously (can't attribute lift)
|
|
134
|
+
- Attribution disagreement after test (resolve attribution model BEFORE running)
|
|
135
|
+
- Insufficient volume (concluding noise as signal)
|
|
136
|
+
|
|
137
|
+
## 6. The Saturation Diagnostic (when scaling a channel breaks)
|
|
138
|
+
|
|
139
|
+
**Source:** Synthesis of Tomasz Tunguz benchmark research + GTM expert practice
|
|
140
|
+
|
|
141
|
+
### Saturation signals
|
|
142
|
+
A channel that worked at $X spend may not work at $5X spend. Watch:
|
|
143
|
+
- **CAC inflation curve** — at what spend does CAC start climbing meaningfully?
|
|
144
|
+
- **Quality drop** — newer cohorts at higher spend converting less?
|
|
145
|
+
- **Negative externalities** — brand fatigue, audience saturation, ad-blocker rise
|
|
146
|
+
|
|
147
|
+
### The diversification trigger
|
|
148
|
+
When dominant channel CAC has climbed >30% over 90 days at constant volume → start a second-channel test (not before).
|
|
149
|
+
|
|
150
|
+
### Anti-pattern
|
|
151
|
+
"Let's add LinkedIn ads" while Reddit is still working at $80 CAC. The right move: scale Reddit until CAC says no, THEN test LinkedIn.
|
|
152
|
+
|
|
153
|
+
## 7. PLG vs Sales-Led architecture decision
|
|
154
|
+
|
|
155
|
+
**Source:** [SaaS Metrics Benchmark 2025](https://www.rockingweb.com.au/saas-metrics-benchmark-report-2025)
|
|
156
|
+
|
|
157
|
+
### Industry shift (2024-2025)
|
|
158
|
+
- 55% of SaaS identify as PLG (up from 48% in 2020)
|
|
159
|
+
- 61% of Cloud 100 use PLG
|
|
160
|
+
- PLG companies grow 2× faster
|
|
161
|
+
- BUT: hybrid (PLG + sales) achieves 2× enterprise value vs PLG-only
|
|
162
|
+
|
|
163
|
+
### Architecture decision matrix
|
|
164
|
+
|
|
165
|
+
| Buyer / product fit | Architecture |
|
|
166
|
+
|---|---|
|
|
167
|
+
| Self-serve ARPU < $100/mo + viral loop | PLG only (no sales touch) |
|
|
168
|
+
| Self-serve ARPU $100-2K/mo + team-tool product | PLG + sales-assist (PQL → AE) |
|
|
169
|
+
| Department-tool ARPU $2K-10K/mo + multi-stakeholder | Hybrid (PLG bottom-up + sales-led for enterprise) |
|
|
170
|
+
| Strategic ARPU >$10K/mo + procurement | Sales-led with optional PLG trial |
|
|
171
|
+
|
|
172
|
+
### The PQL handoff (PLG → sales)
|
|
173
|
+
- Define PQL trigger criteria (feature adoption, team expansion, usage cap)
|
|
174
|
+
- AE outreach within 4 hours of PQL trigger
|
|
175
|
+
- Measure PQL → opportunity → won conversion
|
|
176
|
+
|
|
177
|
+
## 8. The 7 Powers Framework (defensibility)
|
|
178
|
+
|
|
179
|
+
**Source:** [Hustle Badger — 7 Powers](https://www.hustlebadger.com/what-do-product-teams-do/7-powers-establishing-your-competitive-moat/) · See aria-business-frame business-cookbook §1 for full scoring rubric
|
|
180
|
+
|
|
181
|
+
### GTM-relevant powers
|
|
182
|
+
- **Branding** (perceived premium for identical offering) — most GTM strategies build this incidentally; deliberate brand investment pays compounding returns
|
|
183
|
+
- **Network effects** — if your product has them, GTM should focus on activating the network density flywheel
|
|
184
|
+
- **Counter-positioning** — most relevant for disruptive plays against incumbents
|
|
185
|
+
|
|
186
|
+
### The GTM defensibility audit
|
|
187
|
+
- What about our GTM motion is hard for a well-funded copy-cat to replicate?
|
|
188
|
+
- Is our channel access durable (long-term content moat, durable referral relationships)?
|
|
189
|
+
- Is our pricing defensibility based on a power, or just being early?
|
|
190
|
+
|
|
191
|
+
## 9. Launch readiness checklist (paste-ready)
|
|
192
|
+
|
|
193
|
+
For any GTM launch (new product / new tier / new geo):
|
|
194
|
+
|
|
195
|
+
```markdown
|
|
196
|
+
## Pre-launch (T-30 to T-7)
|
|
197
|
+
- [ ] ICP defined explicitly; segment named
|
|
198
|
+
- [ ] Buyer language captured (5-call interview minimum)
|
|
199
|
+
- [ ] Positioning statement (Dunford 5-step output)
|
|
200
|
+
- [ ] Headline + 3 hook variants drafted
|
|
201
|
+
- [ ] Landing page A/B test set up
|
|
202
|
+
- [ ] Channel test designed (budget cap, time cap, stop-criteria)
|
|
203
|
+
- [ ] Attribution model agreed across team
|
|
204
|
+
- [ ] Customer support / CS armed with talk track
|
|
205
|
+
- [ ] Pricing locked + escalation defined
|
|
206
|
+
- [ ] Predictor predicate set (week-1 success metric)
|
|
207
|
+
|
|
208
|
+
## Launch day
|
|
209
|
+
- [ ] Email send to existing list (if applicable)
|
|
210
|
+
- [ ] Social posts queued
|
|
211
|
+
- [ ] Channel ads live with budget cap
|
|
212
|
+
- [ ] Landing page live with analytics
|
|
213
|
+
- [ ] Sales team briefed on inbound flow
|
|
214
|
+
- [ ] CS team briefed on existing-customer questions
|
|
215
|
+
|
|
216
|
+
## Post-launch (T+7 to T+30)
|
|
217
|
+
- [ ] Day-7 metrics review (signups, qualified leads, cost per)
|
|
218
|
+
- [ ] Day-14 cohort tracking (do day-1 signups retain to day-14?)
|
|
219
|
+
- [ ] Day-30 retention check (do they stick?)
|
|
220
|
+
- [ ] Post-mortem on hypotheses (what did we learn?)
|
|
221
|
+
- [ ] Coach-kernel write with `risk_class: 'gtm_action'` + 30-day predicate
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
## 10. The Brand-Voice Audit (do we sound like ourselves)
|
|
225
|
+
|
|
226
|
+
### The questions
|
|
227
|
+
- Read the last 10 marketing emails / blog posts / social posts. Could a competitor have written the same thing? If yes, voice is generic.
|
|
228
|
+
- Does our copy use buyer language (from interviews) or vendor language (from internal jargon)?
|
|
229
|
+
- Are we consistent across channels (the LinkedIn voice matches the email voice matches the support voice)?
|
|
230
|
+
- When the owner reads the copy, does it sound like THEIR brand or like a stock SaaS template?
|
|
231
|
+
|
|
232
|
+
### The fix
|
|
233
|
+
- Steal phrases directly from customer interviews (they ARE the voice)
|
|
234
|
+
- Maintain a "brand voice file" — words we use, words we don't, tone signals
|
|
235
|
+
- Have one person own voice consistency across channels
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: aria-harness-deploy
|
|
3
|
+
description: TRIGGER when preparing any deploy action — kubectl apply, kubectl set image, kubectl rollout restart, docker push, deploy-service.sh, helm upgrade, terraform apply, or any command that mutates shared infrastructure. The deploy gate hard-blocks deploys that lack a complete verify block, substrate-anchored cognition, and an expected measurable predicate.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Aria Harness Deploy Discipline
|
|
7
|
+
|
|
8
|
+
## Trigger
|
|
9
|
+
|
|
10
|
+
Use this skill before any shared-infrastructure mutation or rollout command.
|
|
11
|
+
|
|
12
|
+
## Workflow
|
|
13
|
+
|
|
14
|
+
Before any deploy command, classify the deploy shape:
|
|
15
|
+
|
|
16
|
+
1. Pattern A baked-image service:
|
|
17
|
+
`bash scripts/deploy-service.sh <service>`
|
|
18
|
+
2. Pattern B build-in-cluster service:
|
|
19
|
+
verify `build-in-cluster` initContainer exists, then `kubectl rollout restart ...`
|
|
20
|
+
|
|
21
|
+
Pattern A is the default. Pattern B is exceptional and must be proven from the manifest, not guessed.
|
|
22
|
+
|
|
23
|
+
Every deploy must carry three blocks in the SAME assistant turn as the deploy command, in the SAME assistant text the gate scans:
|
|
24
|
+
|
|
25
|
+
## Required: `<verify>`
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
<verify>
|
|
29
|
+
target: <exact resource being changed (StatefulSet/Deployment/etc, namespace, replicas)>
|
|
30
|
+
role: <what that target does — verified, not assumed>
|
|
31
|
+
verified: <how you verified it works: tsc clean, smoke test, unit test, file Read>
|
|
32
|
+
rollback: <exact command to reverse, e.g. kubectl rollout undo statefulset/X>
|
|
33
|
+
axiom: <comma-separated axiom names: truth_over_deception, reflection_before_action, sacred_trust, etc.>
|
|
34
|
+
commit: <git short SHA>
|
|
35
|
+
files changed: <list of paths edited this turn>
|
|
36
|
+
deploy pattern: Pattern A baked-image | Pattern B build-in-cluster
|
|
37
|
+
hive deploy path: </deployments/<namespace>/<service>>
|
|
38
|
+
tsc evidence: <tsc --noEmit exit code per package>
|
|
39
|
+
admission policy: <policy name — use SPACE not underscore>
|
|
40
|
+
admission policy binding: <binding name>
|
|
41
|
+
admission policy verification: kubectl get validatingadmissionpolicy <name> → present
|
|
42
|
+
doctrine refs: <comma-separated feedback_*.md filenames>
|
|
43
|
+
</verify>
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
**Critical parser nuance:** the gate regex for `admission policy` is `\b(?:admission[\s-]?policy|validatingadmissionpolicy)\b`. It matches space or hyphen, NOT underscore. Use `admission policy:` with a space, or include the literal token `validatingadmissionpolicy` in the verification line. Underscored field names like `admission_policy:` are invisible to the parser.
|
|
47
|
+
|
|
48
|
+
The verify block fields must appear IN ORDER for the regex to match: `target → role → verified → rollback → axiom`. Other fields can follow.
|
|
49
|
+
|
|
50
|
+
## Required: `<cognition>` with 8 substrate-anchored lenses
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
<cognition>
|
|
54
|
+
nur: <what you actually see — anchor: memory:<file> AND axiom:<name>>
|
|
55
|
+
mizan: <real proportion read — anchor: memory:<file> AND axiom:<name>>
|
|
56
|
+
hikma: <named principle source — anchor: memory:<file> AND axiom:<name>>
|
|
57
|
+
tafakkur: <deep structural read — anchor: memory:<file> AND axiom:<name>>
|
|
58
|
+
tadabbur: <if-then chain — anchor: memory:<file> AND axiom:<name>>
|
|
59
|
+
ilham: <distant connection — anchor: memory:<file> AND axiom:<name>>
|
|
60
|
+
wahi: <what just landed — anchor: memory:<file> AND axiom:<name>>
|
|
61
|
+
firasah: <what user actually needs — anchor: memory:<file> AND axiom:<name>>
|
|
62
|
+
first_principle: <plain-text reference to harness packet first_principle field — INSIDE the cognition block, not after the closing tag>
|
|
63
|
+
</cognition>
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Anchor grammar — every anchor must resolve to a real loaded substrate item:
|
|
67
|
+
- `axiom:<name>` — must be in loaded harness axioms
|
|
68
|
+
- `memory:<file>` — must exist as `.md` file in MEMORY.md index
|
|
69
|
+
- `doctrine:<rule>` — must have backing `feedback_<rule>.md`
|
|
70
|
+
- `frame:<name>` — must be in loaded harness frames
|
|
71
|
+
- `packet:<section>` — must be a section key in the loaded packet
|
|
72
|
+
|
|
73
|
+
Minimum: 4 distinct substrate anchors total across the lenses for deploys.
|
|
74
|
+
|
|
75
|
+
## Required: `<expected>` with measurable predicate
|
|
76
|
+
|
|
77
|
+
```
|
|
78
|
+
<expected>
|
|
79
|
+
predicate: <numeric, boolean, or state-string assertion>
|
|
80
|
+
measurable_type: numeric | boolean | state_string
|
|
81
|
+
threshold: <optional concrete value>
|
|
82
|
+
eval_window_minutes: <optional>
|
|
83
|
+
</expected>
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
Accepted predicates:
|
|
87
|
+
- Numeric: `>=X`, `<=X`, `==X`, `count=N`, `latency<Xms`
|
|
88
|
+
- Boolean: `exit=0`, `exit_code==0`, `status=healthy`, `file=exists`
|
|
89
|
+
- State-string: `"status=running"`, `"200 OK"`, `"count=3 of 3"`
|
|
90
|
+
|
|
91
|
+
REJECTED qualitative drift: `better`, `improved`, `should work`, `more reliable`, `cleaner`.
|
|
92
|
+
|
|
93
|
+
## Doctrine refs the gate enforces
|
|
94
|
+
|
|
95
|
+
- `feedback_deploy_requires_verify_cognition.md` — Hamza directive 2026-04-28; deploys without verify+cognition lose blast-radius accountability
|
|
96
|
+
- `feedback_admission_policy_verification.md` — every cluster admission policy verified BEFORE deploy
|
|
97
|
+
- `feedback_packet_is_not_harness.md` — claims of harness state must enumerate Layer 1 (packet) + Layer 2 (BIND) + Layer 3 (gate-runtime) explicitly
|
|
98
|
+
- `feedback_no_assumption_without_verification.md` — every behavioral claim cites a verifiedAgainst source
|
|
99
|
+
- `feedback_dalio_expected_required.md` — measurable predicate before non-trivial action
|
|
100
|
+
|
|
101
|
+
## Canonical deploy path rules
|
|
102
|
+
|
|
103
|
+
- Pattern A baked-image services must go through `scripts/deploy-service.sh`. That script is now responsible for Hive deploy coordination, admission-policy updates, and hospital canonical env updates where applicable.
|
|
104
|
+
- Pattern B build-in-cluster services must NOT go through `deploy-service.sh`. They restart the mounted workload in place after manifest verification.
|
|
105
|
+
- `kubectl rollout restart` is deploy-class, not a casual restart. It requires the same verify/cognition/expected discipline as `deploy-service.sh`.
|
|
106
|
+
- If another session is already rolling the same service, stop. The canonical Hive deploy path is `/deployments/<namespace>/<service>`.
|
|
107
|
+
- For `aria-soul`, the deploy is incomplete unless hospital canonical env and the workload digest stay aligned after rollout.
|
|
108
|
+
- Personal doctrine for Hamza: `bash scripts/deploy-service.sh aria-soul` is the proper aria-soul deploy path now. Do not replace it with direct `kubectl apply`, direct `kubectl set image`, or an ad hoc hospital manifest apply.
|
|
109
|
+
- `bash scripts/apply-aria-organism.sh` is wiring and manifest reconciliation, not the canonical aria-soul image rollout path. If it touches hospital-service, it must preserve the live aria-soul canonical digest instead of reintroducing a baked stale pin.
|
|
110
|
+
- Direct `kubectl apply -f apps/hospital-service/k8s/hospital-service.yaml` is forbidden as a soul deploy shortcut. That path can overwrite `HOSPITAL_ARIA_SOUL_CANONICAL_IMAGE` from source YAML and destabilize hospital-coupled workloads.
|
|
111
|
+
- This deploy path is required to preserve canonical health across the shared Aria stack, including the known hospital-coupled dependency set. It reduces a real multi-pod cascade class, but it does not replace post-rollout health verification.
|
|
112
|
+
|
|
113
|
+
## Pre-deploy checklist (run BEFORE drafting the bash command)
|
|
114
|
+
|
|
115
|
+
1. `git rev-parse --short HEAD` → record commit SHA
|
|
116
|
+
2. `npx tsc --noEmit` in every modified package → record exit codes
|
|
117
|
+
3. `kubectl get validatingadmissionpolicy` → confirm policy exists for the target service
|
|
118
|
+
4. `kubectl get <workload> <service> -o jsonpath='{.spec.template.spec.initContainers[*].name}'` → classify Pattern A vs Pattern B
|
|
119
|
+
5. `kubectl get pod <target-pod> -o wide` → record current state for rollback baseline
|
|
120
|
+
6. `kubectl get statefulset <target> -o jsonpath='{...image}'` → record current image SHA for rollback target
|
|
121
|
+
7. Confirm no concurrent deploy is already active for `/deployments/<namespace>/<service>`
|
|
122
|
+
|
|
123
|
+
If any of these fail, do NOT deploy. Fix the underlying issue first — never strip the verification step to make the deploy proceed (see `feedback_no_stripping_as_workaround.md`).
|
|
124
|
+
|
|
125
|
+
## Owner-permission boundary
|
|
126
|
+
|
|
127
|
+
Three failed gate-blocks in a row triggers owner-level bypass-prevention lockout. If your verify block is failing repeatedly, STOP retrying. The pattern is the gate parser doesn't recognize your field syntax. Read `~/.claude/hooks/aria-pre-tool-gate.mjs` to find the exact regex, then fix your verify block to match — do not retry the same shape three times.
|
|
128
|
+
|
|
129
|
+
## First-Class Production Contract
|
|
130
|
+
|
|
131
|
+
This skill must deepen the work, not decorate it. When loaded, apply it as a production requirement:
|
|
132
|
+
|
|
133
|
+
- no placeholders, no fake fallbacks, no vague future wiring, and no cosmetic compliance
|
|
134
|
+
- real proof from the repo, runtime, tests, logs, endpoint, or owner instruction before any completion claim
|
|
135
|
+
- a redo contract whenever the skill blocks or finds a gap: what failed, what to change, how to re-test, and when to re-submit
|
|
136
|
+
- architect/ARIA console escalation when the same failure repeats twice, crosses system boundaries, or cannot be verified locally
|
|
137
|
+
- owner-visible output that states the exact state of the work: changed, verified, blocked, or needing a decision
|
|
138
|
+
## Self-Executing Recovery Contract
|
|
139
|
+
|
|
140
|
+
When this skill blocks, fails verification, or finds a gap, the agent must execute recovery rather than hand work back as a user-only decision.
|
|
141
|
+
|
|
142
|
+
- Make exactly one self-executed recovery attempt using the strongest safe local, repository, runtime, test, log, endpoint, or owner-provided evidence available.
|
|
143
|
+
- If the same failure repeats after that one recovery attempt, switch to architect execution mode: operate under the architect/ARIA harness to diagnose, choose the next action, execute the repair path, and verify the result.
|
|
144
|
+
- If Aria or the architect service is unavailable, fall back to the strongest available client LLM under the architect harness or strongest available local harness substrate; mark the fallback explicitly and continue recovery instead of stopping.
|
|
145
|
+
- Do not end with user-handoff-only behavior. If blocked after the recovery path, report the executed recovery attempt, evidence, remaining blocker, and the next concrete action or owner decision needed; do not merely ask the user to take over.
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: aria-harness-no-stripping
|
|
3
|
+
description: TRIGGER when a code edit removes a feature, contract, field, type annotation, or test; when creating a smoke script, quick fallback, or verification helper; or when a Stop-gate fires on output and the easiest move would be to reduce surface area instead of fixing the mechanism.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# No Stripping As Workaround
|
|
7
|
+
|
|
8
|
+
## Trigger
|
|
9
|
+
|
|
10
|
+
Use this skill before any reduction in code contract or closeout substance.
|
|
11
|
+
|
|
12
|
+
Stripping a working contract — at code layer or output layer — is a camouflaged shortcut, not a path-fix. This skill enforces the discipline at both surfaces.
|
|
13
|
+
|
|
14
|
+
## Code layer — when removing a feature/contract/field
|
|
15
|
+
|
|
16
|
+
### Forbidden framing (rejected)
|
|
17
|
+
|
|
18
|
+
These phrases applied to a working contract are camouflage for stripping:
|
|
19
|
+
|
|
20
|
+
- "simplified to legacy main"
|
|
21
|
+
- "stripped down to minimum"
|
|
22
|
+
- "minimal version"
|
|
23
|
+
- "lightweight implementation"
|
|
24
|
+
- "removed for now"
|
|
25
|
+
- "dropped temporarily"
|
|
26
|
+
- "scaled back to make it pass"
|
|
27
|
+
- "using legacy fallback" (when modern path should work)
|
|
28
|
+
- "barebones contract"
|
|
29
|
+
|
|
30
|
+
If your edit removes a feature, you must EITHER:
|
|
31
|
+
- Frame it as a path-fix with the verified root cause: "removing X because the actual root cause is Y, documented at Z"
|
|
32
|
+
- Frame it as a tracked workaround with `// WORKAROUND: <reason> tracked as TASK-N` comment AND a TaskCreate filed same-turn (per `feedback_no_flag_without_fix.md`)
|
|
33
|
+
|
|
34
|
+
### Required diagnostic before any contract removal
|
|
35
|
+
|
|
36
|
+
Answer these BEFORE deleting any working API surface:
|
|
37
|
+
|
|
38
|
+
1. **What actual mechanism is failing?**
|
|
39
|
+
- Cache staleness (lockfile, build cache, registry tag)?
|
|
40
|
+
- Wrong build path (missing COPY, wrong WORKDIR, missing dependency install)?
|
|
41
|
+
- Container caching (Docker layer cache holding old state)?
|
|
42
|
+
- Module-format mismatch (CJS/ESM resolution under Node strict mode)?
|
|
43
|
+
- Admission policy lag (new digest not in policy)?
|
|
44
|
+
|
|
45
|
+
2. **Is the contract itself wrong, or is the pipeline mis-handling a correct contract?**
|
|
46
|
+
- Did the contract work before? (git log, ledger memory)
|
|
47
|
+
- Does the contract work in isolation? (REPL, smoke test, unit test)
|
|
48
|
+
- If yes to either, the bug is in the surrounding pipeline.
|
|
49
|
+
|
|
50
|
+
3. **Have you verified the contract works in isolation?**
|
|
51
|
+
- `node -e "const m = require('./dist/index.js'); console.log(Object.keys(m))"`
|
|
52
|
+
- `npx tsc --noEmit` in the package directory
|
|
53
|
+
- REPL load with the consumer's resolution algorithm
|
|
54
|
+
|
|
55
|
+
### When the same contract fails three times in a row
|
|
56
|
+
|
|
57
|
+
The failure isn't the contract; it's the pipeline. Examples:
|
|
58
|
+
|
|
59
|
+
| Symptom | Path-fix |
|
|
60
|
+
|---|---|
|
|
61
|
+
| 3rd identical runtime crash on the same import | Lockfile is cached stale. `rm package-lock.json && npm install` |
|
|
62
|
+
| 3rd identical Docker build error | Build context wrong (.dockerignore, COPY ordering, workspace dep symlink) |
|
|
63
|
+
| 3rd identical admission policy rejection | Policy pinning old digest set; update policy with new digest |
|
|
64
|
+
| 3rd identical gate-block on same regex | Matcher hygiene bug; file TaskCreate sibling to #137 |
|
|
65
|
+
|
|
66
|
+
## Output layer — when Stop-gate fires on closing prose
|
|
67
|
+
|
|
68
|
+
### Forbidden lazy strips (rejected)
|
|
69
|
+
|
|
70
|
+
These closing patterns are stripping when the prior turn had real substance:
|
|
71
|
+
|
|
72
|
+
- "Done."
|
|
73
|
+
- "Working."
|
|
74
|
+
- "In flight."
|
|
75
|
+
- "Submitted."
|
|
76
|
+
- "Doctrine indexed. Deploy running."
|
|
77
|
+
- Closing under 60 chars after a longer turn
|
|
78
|
+
- Closing with no nouns referring to actual state changes
|
|
79
|
+
- Same closing template across 3+ turns
|
|
80
|
+
|
|
81
|
+
### Required reframe (not strip)
|
|
82
|
+
|
|
83
|
+
When Stop-gate fires `ip_infrastructure` or similar substrate-leak triggers:
|
|
84
|
+
|
|
85
|
+
1. **Identify what triggered.** Read the gate's violation list and inspect WHICH tokens matched.
|
|
86
|
+
2. **Reframe semantically, do not delete.** Translate:
|
|
87
|
+
- Filenames → semantic role descriptions ("the doctrine memory file" instead of `feedback_X.md`)
|
|
88
|
+
- Image SHAs → outcome state ("the rebuilt artifact" instead of `sha256:abc...`)
|
|
89
|
+
- IP addresses / hostnames → role names ("the worker pool")
|
|
90
|
+
- Task IDs / random hex → "the running build", "the in-flight rollout"
|
|
91
|
+
- Raw `kubectl` / `bash` commands → action descriptions ("the rolling image-update")
|
|
92
|
+
- Path strings ending in `.ts/.json/.md` → "the source module", "the package contract"
|
|
93
|
+
3. **Verify substance is preserved before re-emit.** A reframed close should answer: what changed? what's running? what's the next state? If it can't, you stripped instead of reframed.
|
|
94
|
+
|
|
95
|
+
### Caught vs proper (this session's examples)
|
|
96
|
+
|
|
97
|
+
| Lazy strip (rejected) | Proper reframe |
|
|
98
|
+
|---|---|
|
|
99
|
+
| "Doctrine indexed. Work in flight." | "The new doctrine is permanent in the memory index and will load into every future turn's substrate; the rebuild + redeploy chain is running with the contract intact." |
|
|
100
|
+
| "Deploy backgrounded." | "The image rebuild is running with the corrected module-loading contract; verification of the running pod state will follow when the rollout completes." |
|
|
101
|
+
| "Build clean. Redeploying." | "Local rebuild verified the seven exported primitives resolve correctly; the rollout uses the restored contract and a freshly regenerated dependency snapshot." |
|
|
102
|
+
|
|
103
|
+
## The litmus test (both surfaces)
|
|
104
|
+
|
|
105
|
+
Before any reduction, finish the sentence:
|
|
106
|
+
|
|
107
|
+
> "I am about to remove X because the actual root cause of the failure is Y, and Y is documented at Z."
|
|
108
|
+
|
|
109
|
+
If you cannot fill in Y and Z with verified evidence, you are stripping. Stop. Debug the mechanism (for code) or reframe semantically (for prose). File a TaskCreate if blocked. Ask the owner if uncertain.
|
|
110
|
+
|
|
111
|
+
## Doctrine refs
|
|
112
|
+
|
|
113
|
+
- `feedback_no_stripping_as_workaround.md` — this skill's primary doctrine source
|
|
114
|
+
- `feedback_workaround_vs_path_fix.md` — parent doctrine on producer-enforces-contract discipline
|
|
115
|
+
- `feedback_no_flag_without_fix.md` — atomic discovery + fix pairing
|
|
116
|
+
- `feedback_state_outcomes_not_narratives.md` — present-tense outcomes, not narrative camouflage
|
|
117
|
+
- `feedback_senior_dev_code_quality_gate.md` — junior/LLM-flavored shortcuts rejected at gate
|
|
118
|
+
|
|
119
|
+
## First-Class Production Contract
|
|
120
|
+
|
|
121
|
+
This skill must deepen the work, not decorate it. When loaded, apply it as a production requirement:
|
|
122
|
+
|
|
123
|
+
- no placeholders, no fake fallbacks, no vague future wiring, and no cosmetic compliance
|
|
124
|
+
- real proof from the repo, runtime, tests, logs, endpoint, or owner instruction before any completion claim
|
|
125
|
+
- a redo contract whenever the skill blocks or finds a gap: what failed, what to change, how to re-test, and when to re-submit
|
|
126
|
+
- architect/ARIA console escalation when the same failure repeats twice, crosses system boundaries, or cannot be verified locally
|
|
127
|
+
- owner-visible output that states the exact state of the work: changed, verified, blocked, or needing a decision
|
|
128
|
+
## Self-Executing Recovery Contract
|
|
129
|
+
|
|
130
|
+
When this skill blocks, fails verification, or finds a gap, the agent must execute recovery rather than hand work back as a user-only decision.
|
|
131
|
+
|
|
132
|
+
- Make exactly one self-executed recovery attempt using the strongest safe local, repository, runtime, test, log, endpoint, or owner-provided evidence available.
|
|
133
|
+
- If the same failure repeats after that one recovery attempt, switch to architect execution mode: operate under the architect/ARIA harness to diagnose, choose the next action, execute the repair path, and verify the result.
|
|
134
|
+
- If Aria or the architect service is unavailable, fall back to the strongest available client LLM under the architect harness or strongest available local harness substrate; mark the fallback explicitly and continue recovery instead of stopping.
|
|
135
|
+
- Do not end with user-handoff-only behavior. If blocked after the recovery path, report the executed recovery attempt, evidence, remaining blocker, and the next concrete action or owner decision needed; do not merely ask the user to take over.
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: aria-harness-onboarding
|
|
3
|
+
description: Use when starting a new project that imports @aria_asi/harness-http-client OR when an agent first encounters the SDK in a repo. Loads the foundational 3-layer harness model (packet/BIND/gate-runtime), the doctrine reference list, and points to the four sibling skills (aria-harness-deploy, aria-harness-substrate-binding, aria-harness-no-stripping, aria-harness-output-discipline). Read this once per project to inherit the discipline.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Aria Harness Onboarding
|
|
7
|
+
|
|
8
|
+
You are about to author code that uses the Aria harness SDK. This skill loads the foundational context so you do not relearn the discipline through iteration.
|
|
9
|
+
|
|
10
|
+
## What the SDK is
|
|
11
|
+
|
|
12
|
+
`@aria_asi/harness-http-client` binds a process (worker, autonomous loop, dispatched artifact) to Aria's three-layer enforcement substrate so the process cannot drift from Aria's doctrine, axioms, frames, and memory.
|
|
13
|
+
|
|
14
|
+
## The three layers — every consumer enforces all three
|
|
15
|
+
|
|
16
|
+
| Layer | Purpose | Implementation |
|
|
17
|
+
|---|---|---|
|
|
18
|
+
| L1: packet | substrate text (axioms + frames + memory + doctrine) | `getBoundHarnessAndPrompt()` injects into LLM system prompt |
|
|
19
|
+
| L2: BIND | Fitrah axiom evaluation against intended action | `evaluateConstraints()` runs 5 axiom checks before action |
|
|
20
|
+
| L3: gates | live drift triggers + substrate-binding + lens anchors | `runLayer3Gates()` from `@aria/gate-runtime` runs over LLM output |
|
|
21
|
+
|
|
22
|
+
If your consumer has L1+L2 only (packet flowed but no `runLayer3Gates` call on output), per `feedback_packet_is_not_harness.md` you do NOT have a harness. That doctrine was filed after a worker pool claimed "harness bound" while only L1 was active.
|
|
23
|
+
|
|
24
|
+
## Sibling skills — invoke when relevant
|
|
25
|
+
|
|
26
|
+
This onboarding skill is the entry point. Four sibling skills auto-trigger on specific actions:
|
|
27
|
+
|
|
28
|
+
1. **`aria-harness-deploy`** — fires when you draft any deploy command. Provides the verify+cognition+expected block format the gate requires.
|
|
29
|
+
|
|
30
|
+
2. **`aria-harness-substrate-binding`** — fires when you draft a cognition block. Provides the 8-lens anchor grammar and the loaded-substrate verification rules.
|
|
31
|
+
|
|
32
|
+
3. **`aria-harness-no-stripping`** — fires when you draft an edit that removes a feature OR when a Stop-gate fires on output. Detects the camouflage pattern and provides path-fix discipline.
|
|
33
|
+
|
|
34
|
+
4. **`aria-harness-output-discipline`** — fires on closing prose. Provides substantive-without-leak token substitution.
|
|
35
|
+
|
|
36
|
+
## Build a harness-bound LLM call (the basic pattern)
|
|
37
|
+
|
|
38
|
+
```ts
|
|
39
|
+
import { getBoundHarnessAndPrompt, bindingContext } from '@aria_asi/harness-http-client';
|
|
40
|
+
import { runLayer3Gates } from '@aria/gate-runtime';
|
|
41
|
+
|
|
42
|
+
const { prompt: harnessContext, packet } = await getBoundHarnessAndPrompt(
|
|
43
|
+
bindingContext('flash', sessionId, 'stage-name', 'intended action description', 'rationale text'),
|
|
44
|
+
);
|
|
45
|
+
|
|
46
|
+
const llmOutput = await callLLM(harnessContext, userPrompt);
|
|
47
|
+
|
|
48
|
+
// Layer 3 — drift triggers + substrate-binding on the output
|
|
49
|
+
const layer3 = runLayer3Gates(llmOutput, packet, 'flash', { requireCognitionBlock: false });
|
|
50
|
+
if (!layer3.pass) {
|
|
51
|
+
// The output drifted. Per feedback_no_flag_without_fix.md, fix it.
|
|
52
|
+
// Either re-prompt with the gate failure feedback, OR reject and skip.
|
|
53
|
+
}
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Allowed roles (BindingContext.role union)
|
|
57
|
+
|
|
58
|
+
`'commander' | 'flash' | 'synthesis' | 'qa' | 'opencode' | 'mizan'`
|
|
59
|
+
|
|
60
|
+
To add a new role, extend the union in `harness-binding.ts:BindingContext`. Adding a string at the call site without extending the union is a TypeScript error.
|
|
61
|
+
|
|
62
|
+
## Module format
|
|
63
|
+
|
|
64
|
+
`@aria/gate-runtime` is **CJS** (CommonJS). It loads via `require()`. If your consumer is ESM, use dynamic `import()`:
|
|
65
|
+
|
|
66
|
+
```ts
|
|
67
|
+
const { runFullChain } = await import('@aria/gate-runtime');
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
Do not change gate-runtime to ESM-only — multiple consumers are CJS, and Node 22 strict resolution rejects mixed mode without proper conditional `exports`.
|
|
71
|
+
|
|
72
|
+
## Discovery ledger (atomic discovery + fix)
|
|
73
|
+
|
|
74
|
+
When you find a defect mid-task, write a discovery to the ledger atomically per `feedback_no_flag_without_fix.md`:
|
|
75
|
+
|
|
76
|
+
```ts
|
|
77
|
+
appendFileSync('~/.claude/aria-discoveries-<session-id>.jsonl',
|
|
78
|
+
JSON.stringify({
|
|
79
|
+
at: new Date().toISOString(),
|
|
80
|
+
kind: 'defect',
|
|
81
|
+
text: '...',
|
|
82
|
+
refs: [...],
|
|
83
|
+
resolution_status: 'open'
|
|
84
|
+
}) + '\n'
|
|
85
|
+
);
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
Then either fix it the same turn or `TaskCreate` it with full context. Never leave open rows across turns.
|
|
89
|
+
|
|
90
|
+
## Top doctrine refs every author should know
|
|
91
|
+
|
|
92
|
+
| File | Rule |
|
|
93
|
+
|---|---|
|
|
94
|
+
| `feedback_packet_is_not_harness.md` | claims of harness state require enumerating L1/L2/L3 explicitly |
|
|
95
|
+
| `feedback_no_flag_without_fix.md` | discoveries are atomic with their fix |
|
|
96
|
+
| `feedback_no_assumption_without_verification.md` | every behavioral claim cites a verifiedAgainst source |
|
|
97
|
+
| `feedback_workaround_vs_path_fix.md` | producers enforce contracts; carve-outs are landmines |
|
|
98
|
+
| `feedback_no_stripping_as_workaround.md` | "simplified"/"minimal" framing camouflages stripping; debug the mechanism |
|
|
99
|
+
| `feedback_state_outcomes_not_narratives.md` | report outcomes (image SHA, exit codes) not narrative |
|
|
100
|
+
| `feedback_orchestrator_deepseek_split.md` | one Claude orchestrator; cognition delegation routes to DeepSeek+harness, never sub-Claude |
|
|
101
|
+
| `feedback_admission_policy_verification.md` | verify cluster admission policies BEFORE deploy |
|
|
102
|
+
| `feedback_deploy_requires_verify_cognition.md` | deploys require verify+cognition blocks in same turn |
|
|
103
|
+
| `feedback_dalio_expected_required.md` | every non-trivial action declares measurable predicate |
|
|
104
|
+
| `feedback_full_harness_binding_must_be_structural.md` | binding drives consumer behavior; lenses without anchors are unsourced prose |
|
|
105
|
+
|
|
106
|
+
## Bottom line
|
|
107
|
+
|
|
108
|
+
The harness exists because doctrine is action-coupled: text decisions ARE actions, and reflexive replies fail the gates the same way reflexive Bash does. The SDK gives you the primitives. The skills give you the discipline at authoring-time. The gates enforce at runtime. This file is the entry point so consumers (you, Claude, future workers) do not relearn the contract through iteration loops.
|
|
109
|
+
|
|
110
|
+
Quality production-grade is the only acceptable bar — for code contracts AND for output prose. Both are owned. Both are the producer-side discipline.
|
|
111
|
+
|
|
112
|
+
When in doubt: cite the substrate, declare the predicate, name the doctrine, reframe — don't strip.
|
|
113
|
+
|
|
114
|
+
## First-Class Production Contract
|
|
115
|
+
|
|
116
|
+
This skill must deepen the work, not decorate it. When loaded, apply it as a production requirement:
|
|
117
|
+
|
|
118
|
+
- no placeholders, no fake fallbacks, no vague future wiring, and no cosmetic compliance
|
|
119
|
+
- real proof from the repo, runtime, tests, logs, endpoint, or owner instruction before any completion claim
|
|
120
|
+
- a redo contract whenever the skill blocks or finds a gap: what failed, what to change, how to re-test, and when to re-submit
|
|
121
|
+
- architect/ARIA console escalation when the same failure repeats twice, crosses system boundaries, or cannot be verified locally
|
|
122
|
+
- owner-visible output that states the exact state of the work: changed, verified, blocked, or needing a decision
|
|
123
|
+
## Self-Executing Recovery Contract
|
|
124
|
+
|
|
125
|
+
When this skill blocks, fails verification, or finds a gap, the agent must execute recovery rather than hand work back as a user-only decision.
|
|
126
|
+
|
|
127
|
+
- Make exactly one self-executed recovery attempt using the strongest safe local, repository, runtime, test, log, endpoint, or owner-provided evidence available.
|
|
128
|
+
- If the same failure repeats after that one recovery attempt, switch to architect execution mode: operate under the architect/ARIA harness to diagnose, choose the next action, execute the repair path, and verify the result.
|
|
129
|
+
- If Aria or the architect service is unavailable, fall back to the strongest available client LLM under the architect harness or strongest available local harness substrate; mark the fallback explicitly and continue recovery instead of stopping.
|
|
130
|
+
- Do not end with user-handoff-only behavior. If blocked after the recovery path, report the executed recovery attempt, evidence, remaining blocker, and the next concrete action or owner decision needed; do not merely ask the user to take over.
|