@agentikos/omega-os 0.2.0 → 0.19.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -3
- package/bootstrap/lib/__pycache__/claude-code-settings.cpython-313.pyc +0 -0
- package/bootstrap/lib/__pycache__/llm-clis.cpython-313.pyc +0 -0
- package/bootstrap/lib/__pycache__/manifest-helpers.cpython-313.pyc +0 -0
- package/bootstrap/lib/claude-code-settings.py +176 -0
- package/bootstrap/lib/common.sh +457 -1
- package/bootstrap/lib/llm-clis.py +341 -0
- package/bootstrap/lib/manifest-helpers.py +384 -0
- package/bootstrap/lib/steps.sh +790 -21
- package/bootstrap/manifest.example.yaml +87 -1
- package/bootstrap/templates/aisb/CLAUDE.md +305 -0
- package/bootstrap/templates/aisb/architect.md +204 -0
- package/bootstrap/templates/aisb/checkers/CLAUDE.md +9 -0
- package/bootstrap/templates/aisb/checkers/checker-architect.md +151 -0
- package/bootstrap/templates/aisb/checkers/checker-common.md +171 -0
- package/bootstrap/templates/aisb/checkers/checker-construct.md +129 -0
- package/bootstrap/templates/aisb/checkers/checker-keymaker.md +204 -0
- package/bootstrap/templates/aisb/checkers/checker-link.md +205 -0
- package/bootstrap/templates/aisb/checkers/checker-merovingian.md +219 -0
- package/bootstrap/templates/aisb/checkers/checker-morpheus.md +211 -0
- package/bootstrap/templates/aisb/checkers/checker-neo.md +177 -0
- package/bootstrap/templates/aisb/checkers/checker-niobe.md +156 -0
- package/bootstrap/templates/aisb/checkers/checker-oracle.md +164 -0
- package/bootstrap/templates/aisb/checkers/checker-seraph.md +187 -0
- package/bootstrap/templates/aisb/checkers/checker-smith.md +195 -0
- package/bootstrap/templates/aisb/checkers/checker-zion.md +113 -0
- package/bootstrap/templates/aisb/construct.md +135 -0
- package/bootstrap/templates/aisb/keymaker.md +227 -0
- package/bootstrap/templates/aisb/link.md +170 -0
- package/bootstrap/templates/aisb/lmc-protocol.md +57 -0
- package/bootstrap/templates/aisb/merovingian.md +159 -0
- package/bootstrap/templates/aisb/morpheus.md +243 -0
- package/bootstrap/templates/aisb/neo.md +147 -0
- package/bootstrap/templates/aisb/niobe.md +197 -0
- package/bootstrap/templates/aisb/oracle.md +244 -0
- package/bootstrap/templates/aisb/protocols/handoff-templates.md +204 -0
- package/bootstrap/templates/aisb/protocols/shared-protocol.md +248 -0
- package/bootstrap/templates/aisb/pythia.md +153 -0
- package/bootstrap/templates/aisb/seraph.md +315 -0
- package/bootstrap/templates/aisb/smith.md +202 -0
- package/bootstrap/templates/aisb/zion.md +172 -0
- package/bootstrap/templates/autonomous/audit-patrol.yaml +41 -0
- package/bootstrap/templates/autonomous/smith-reflect.yaml +43 -0
- package/bootstrap/templates/autonomous/ssh-key-rotate.yaml +46 -0
- package/bootstrap/templates/autonomous/support-agent.yaml +38 -0
- package/docs/AUDITS.md +85 -0
- package/docs/GAP-ANALYSIS.md +214 -0
- package/docs/INSTALL.md +47 -9
- package/docs/MCP-AND-PLUGINS.md +31 -4
- package/docs/SIMULATION.md +171 -0
- package/docs/simulate.sh +211 -0
- package/install.sh +164 -17
- package/omega/Agentik_Engine/README.md +4 -2
- package/omega/Agentik_Engine/omega_engine/__init__.py +147 -1
- package/omega/Agentik_Engine/omega_engine/__pycache__/__init__.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/account.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/agent_messages.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/aisb_chat.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/audit.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/audit_arsenal.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/audit_diff.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/audit_gate.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/auto_update.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/autonomous.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/backup.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/barrier.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/bus.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/cadence.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/classifier.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/cleanup.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/cli.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/completions.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/costs.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/done_signal.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/envelope.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/events.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/executor.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/handoff.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/hermes.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/hermes_bootstrap.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/hermes_desktop.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/learning.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/managed_agent.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/memory.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/menu.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/mission.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/plan.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/progress.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/project.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/prompts.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/provider.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/prune.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/pursue.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/reducer.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/report.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/router.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/skill_routing.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/smoke.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/store.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/supervisor.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/sync.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/task.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/telegram.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/telegram_history.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/tmux.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/tools.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/understand_anything.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/updater.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/validate.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/vault.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/webhooks.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/__pycache__/worker.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/account.py +28 -31
- package/omega/Agentik_Engine/omega_engine/agent_messages.py +167 -0
- package/omega/Agentik_Engine/omega_engine/aisb_chat.py +128 -0
- package/omega/Agentik_Engine/omega_engine/audit_diff.py +99 -0
- package/omega/Agentik_Engine/omega_engine/audit_gate.py +149 -0
- package/omega/Agentik_Engine/omega_engine/audits/__init__.py +60 -0
- package/omega/Agentik_Engine/omega_engine/audits/__pycache__/__init__.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/audits/__pycache__/batcher.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/audits/__pycache__/dispatcher.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/audits/__pycache__/generator.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/audits/__pycache__/history.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/audits/__pycache__/pipeline.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/audits/batcher.py +218 -0
- package/omega/Agentik_Engine/omega_engine/audits/dispatcher.py +92 -0
- package/omega/Agentik_Engine/omega_engine/audits/generator.py +234 -0
- package/omega/Agentik_Engine/omega_engine/audits/history.py +168 -0
- package/omega/Agentik_Engine/omega_engine/audits/pipeline.py +198 -0
- package/omega/Agentik_Engine/omega_engine/auto_update.py +339 -0
- package/omega/Agentik_Engine/omega_engine/backup.py +215 -0
- package/omega/Agentik_Engine/omega_engine/cadence.py +158 -0
- package/omega/Agentik_Engine/omega_engine/classifier.py +215 -0
- package/omega/Agentik_Engine/omega_engine/cleanup.py +673 -0
- package/omega/Agentik_Engine/omega_engine/cli.py +4156 -86
- package/omega/Agentik_Engine/omega_engine/completions.py +260 -0
- package/omega/Agentik_Engine/omega_engine/costs.py +100 -0
- package/omega/Agentik_Engine/omega_engine/daemons/__pycache__/__init__.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/daemons/__pycache__/autonomous.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/daemons/__pycache__/engine.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/daemons/__pycache__/telegram.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/daemons/engine.py +53 -4
- package/omega/Agentik_Engine/omega_engine/daemons/telegram.py +101 -17
- package/omega/Agentik_Engine/omega_engine/done_signal.py +154 -0
- package/omega/Agentik_Engine/omega_engine/educators/__pycache__/__init__.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/educators/__pycache__/artifact.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/educators/__pycache__/automation.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/educators/__pycache__/base.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/educators/__pycache__/claudecode.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/educators/__pycache__/connection.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/educators/__pycache__/coworker.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/educators/__pycache__/loop.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/educators/__pycache__/prompt.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/educators/__pycache__/skill.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/envelope.py +219 -0
- package/omega/Agentik_Engine/omega_engine/executor.py +149 -10
- package/omega/Agentik_Engine/omega_engine/genesis/__init__.py +134 -0
- package/omega/Agentik_Engine/omega_engine/genesis/__pycache__/__init__.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/genesis/__pycache__/orchestrator.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/genesis/__pycache__/phases.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/genesis/__pycache__/stack.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/genesis/__pycache__/state.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/genesis/orchestrator.py +262 -0
- package/omega/Agentik_Engine/omega_engine/genesis/phases.py +950 -0
- package/omega/Agentik_Engine/omega_engine/genesis/stack.py +324 -0
- package/omega/Agentik_Engine/omega_engine/genesis/state.py +353 -0
- package/omega/Agentik_Engine/omega_engine/handoff.py +459 -0
- package/omega/Agentik_Engine/omega_engine/hermes.py +426 -0
- package/omega/Agentik_Engine/omega_engine/hermes_bootstrap.py +382 -0
- package/omega/Agentik_Engine/omega_engine/hermes_desktop.py +469 -0
- package/omega/Agentik_Engine/omega_engine/integrations/__init__.py +30 -0
- package/omega/Agentik_Engine/omega_engine/integrations/__pycache__/__init__.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/integrations/__pycache__/graphify.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/integrations/graphify.py +234 -0
- package/omega/Agentik_Engine/omega_engine/learning.py +268 -0
- package/omega/Agentik_Engine/omega_engine/managed_agent.py +467 -0
- package/omega/Agentik_Engine/omega_engine/memory.py +271 -0
- package/omega/Agentik_Engine/omega_engine/menu.py +1065 -0
- package/omega/Agentik_Engine/omega_engine/migrations/__init__.py +144 -0
- package/omega/Agentik_Engine/omega_engine/migrations/__pycache__/__init__.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/migrations/__pycache__/v0_14_0.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/migrations/v0_14_0.py +29 -0
- package/omega/Agentik_Engine/omega_engine/mission.py +16 -13
- package/omega/Agentik_Engine/omega_engine/plan.py +846 -0
- package/omega/Agentik_Engine/omega_engine/prompts.py +158 -0
- package/omega/Agentik_Engine/omega_engine/provider.py +161 -12
- package/omega/Agentik_Engine/omega_engine/prune.py +151 -0
- package/omega/Agentik_Engine/omega_engine/pursue.py +205 -0
- package/omega/Agentik_Engine/omega_engine/rag/__pycache__/__init__.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/rag/__pycache__/agentic.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/rag/__pycache__/base.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/rag/__pycache__/corrective.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/rag/__pycache__/graph.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/rag/__pycache__/hybrid.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/rag/__pycache__/multimodal.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/rag/__pycache__/router.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/router.py +28 -0
- package/omega/Agentik_Engine/omega_engine/skill_discovery/__init__.py +48 -0
- package/omega/Agentik_Engine/omega_engine/skill_discovery/__pycache__/__init__.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/skill_discovery/__pycache__/auditor.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/skill_discovery/__pycache__/finder.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/skill_discovery/__pycache__/installer.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/skill_discovery/__pycache__/marketplaces.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/omega_engine/skill_discovery/auditor.py +232 -0
- package/omega/Agentik_Engine/omega_engine/skill_discovery/finder.py +94 -0
- package/omega/Agentik_Engine/omega_engine/skill_discovery/installer.py +129 -0
- package/omega/Agentik_Engine/omega_engine/skill_discovery/marketplaces.py +80 -0
- package/omega/Agentik_Engine/omega_engine/skill_routing.py +388 -0
- package/omega/Agentik_Engine/omega_engine/smoke.py +81 -0
- package/omega/Agentik_Engine/omega_engine/store.py +88 -41
- package/omega/Agentik_Engine/omega_engine/sync.py +142 -1
- package/omega/Agentik_Engine/omega_engine/telegram_history.py +260 -0
- package/omega/Agentik_Engine/omega_engine/tmux.py +526 -0
- package/omega/Agentik_Engine/omega_engine/understand_anything.py +275 -0
- package/omega/Agentik_Engine/omega_engine/updater.py +70 -0
- package/omega/Agentik_Engine/omega_engine/validate.py +186 -0
- package/omega/Agentik_Engine/omega_engine/vault.py +342 -0
- package/omega/Agentik_Engine/omega_engine/webhooks.py +262 -0
- package/omega/Agentik_Engine/omega_engine/worker.py +526 -0
- package/omega/Agentik_Engine/pyproject.toml +1 -1
- package/omega/Agentik_Engine/tests/__pycache__/test_account.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_account.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_adversarial.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_adversarial.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_agents_envelope.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_agents_envelope.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_audit_arsenal.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_audit_arsenal.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_audits_pipeline.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_audits_pipeline.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_auto_update_and_migrations.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_auto_update_and_migrations.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_autonomous.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_autonomous.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_educators.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_educators.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_executor.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_executor.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_genesis_and_plan.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_genesis_and_plan.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_graphify.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_graphify.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_handoff.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_handoff.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_hermes_and_ua.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_hermes_and_ua.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_hermes_bootstrap_and_desktop.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_hermes_bootstrap_and_desktop.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_install_steps.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_install_steps.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_install_ux.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_install_ux.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_installer_wiring.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_installer_wiring.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_intelligence.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_intelligence.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_llm_clis_and_uninstall.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_llm_clis_and_uninstall.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_managed_agent.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_managed_agent.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_max_provider_and_menu.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_max_provider_and_menu.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_menu_coverage.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_menu_coverage.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_mission.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_mission.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_progress.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_progress.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_project.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_project.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_pursue_cadence.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_pursue_cadence.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_rag.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_rag.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_reducer.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_reducer.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_report.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_report.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_role_aliases_and_ssot.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_role_aliases_and_ssot.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_skill_discovery_and_gate.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_skill_discovery_and_gate.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_skill_power.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_skill_power.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_skill_routing.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_skill_routing.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_snapshot_partial.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_snapshot_partial.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_telegram_history.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_telegram_history.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_tmux_and_aisb_chat.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_tmux_and_aisb_chat.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_tools_and_sync.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_tools_and_sync.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_v06_features.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_v06_features.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_vault.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_vault.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_webhooks_and_readiness.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_webhooks_and_readiness.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_worker_and_cleanup.cpython-313-pytest-8.4.2.pyc +0 -0
- package/omega/Agentik_Engine/tests/__pycache__/test_worker_and_cleanup.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/tests/test_account.py +8 -3
- package/omega/Agentik_Engine/tests/test_adversarial.py +351 -0
- package/omega/Agentik_Engine/tests/test_agents_envelope.py +274 -0
- package/omega/Agentik_Engine/tests/test_audits_pipeline.py +348 -0
- package/omega/Agentik_Engine/tests/test_auto_update_and_migrations.py +394 -0
- package/omega/Agentik_Engine/tests/test_genesis_and_plan.py +573 -0
- package/omega/Agentik_Engine/tests/test_graphify.py +190 -0
- package/omega/Agentik_Engine/tests/test_handoff.py +311 -0
- package/omega/Agentik_Engine/tests/test_hermes_and_ua.py +387 -0
- package/omega/Agentik_Engine/tests/test_hermes_bootstrap_and_desktop.py +358 -0
- package/omega/Agentik_Engine/tests/test_install_steps.py +359 -0
- package/omega/Agentik_Engine/tests/test_install_ux.py +151 -0
- package/omega/Agentik_Engine/tests/test_installer_wiring.py +496 -0
- package/omega/Agentik_Engine/tests/test_intelligence.py +285 -0
- package/omega/Agentik_Engine/tests/test_llm_clis_and_uninstall.py +228 -0
- package/omega/Agentik_Engine/tests/test_managed_agent.py +363 -0
- package/omega/Agentik_Engine/tests/test_max_provider_and_menu.py +231 -0
- package/omega/Agentik_Engine/tests/test_menu_coverage.py +72 -0
- package/omega/Agentik_Engine/tests/test_pursue_cadence.py +217 -0
- package/omega/Agentik_Engine/tests/test_role_aliases_and_ssot.py +207 -0
- package/omega/Agentik_Engine/tests/test_skill_discovery_and_gate.py +337 -0
- package/omega/Agentik_Engine/tests/test_skill_power.py +259 -0
- package/omega/Agentik_Engine/tests/test_skill_routing.py +189 -0
- package/omega/Agentik_Engine/tests/test_telegram_history.py +209 -0
- package/omega/Agentik_Engine/tests/test_tmux_and_aisb_chat.py +223 -0
- package/omega/Agentik_Engine/tests/test_v06_features.py +370 -0
- package/omega/Agentik_Engine/tests/test_vault.py +173 -0
- package/omega/Agentik_Engine/tests/test_webhooks_and_readiness.py +277 -0
- package/omega/Agentik_Engine/tests/test_worker_and_cleanup.py +541 -0
- package/omega/Agentik_Extra/etc/secrets/.vault-key +3 -0
- package/omega/Agentik_Extra/etc/secrets/.vault-pub +1 -0
- package/omega/Agentik_Runtime/audits.db +0 -0
- package/omega/Agentik_SSOT/VERSION +1 -1
- package/omega/Agentik_SSOT/claude-plugins/claude-plugins.yaml +100 -0
- package/omega/Agentik_SSOT/docs/LAYERS.md +90 -0
- package/omega/Agentik_SSOT/docs/USER-JOURNEY.md +283 -0
- package/omega/Agentik_SSOT/docs/quality-arsenal/ARSENAL-INTERCONNECTIONS.md +283 -0
- package/omega/Agentik_SSOT/docs/quality-arsenal/ARSENAL-ORCHESTRATION-PLAYBOOK.md +364 -0
- package/omega/Agentik_SSOT/docs/quality-arsenal/AUDIT-VERIFICATION-CONTRACT.md +272 -0
- package/omega/Agentik_SSOT/docs/quality-arsenal/QUALITY-ARSENAL-PREAMBLE.md +462 -0
- package/omega/Agentik_SSOT/marketplaces/design-discipline.yaml +86 -0
- package/omega/Agentik_SSOT/skills/a11yaudit/SKILL.md +161 -0
- package/omega/Agentik_SSOT/skills/apiaudit/SKILL.md +157 -0
- package/omega/Agentik_SSOT/skills/audit-orchestrator.md +212 -0
- package/omega/Agentik_SSOT/skills/audit-pilot.md +466 -0
- package/omega/Agentik_SSOT/skills/audit-tracker.md +147 -0
- package/omega/Agentik_SSOT/skills/automationaudit/SKILL.md +161 -0
- package/omega/Agentik_SSOT/skills/cadence/SKILL.md +76 -0
- package/omega/Agentik_SSOT/skills/codeaudit/SKILL.md +153 -0
- package/omega/Agentik_SSOT/skills/copyaudit/SKILL.md +161 -0
- package/omega/Agentik_SSOT/skills/dataaudit/SKILL.md +157 -0
- package/omega/Agentik_SSOT/skills/debugaudit/SKILL.md +161 -0
- package/omega/Agentik_SSOT/skills/dispatch/SKILL.md +79 -0
- package/omega/Agentik_SSOT/skills/dxaudit/SKILL.md +161 -0
- package/omega/Agentik_SSOT/skills/featureaudit/SKILL.md +161 -0
- package/omega/Agentik_SSOT/skills/flowaudit/SKILL.md +165 -0
- package/omega/Agentik_SSOT/skills/genesis/SKILL.md +116 -0
- package/omega/Agentik_SSOT/skills/handoff/SKILL.md +117 -0
- package/omega/Agentik_SSOT/skills/logicaudit/SKILL.md +165 -0
- package/omega/Agentik_SSOT/skills/motionaudit/SKILL.md +165 -0
- package/omega/Agentik_SSOT/skills/newcmd.md +300 -0
- package/omega/Agentik_SSOT/skills/perfaudit/SKILL.md +161 -0
- package/omega/Agentik_SSOT/skills/plan/SKILL.md +127 -0
- package/omega/Agentik_SSOT/skills/pursue/SKILL.md +68 -0
- package/omega/Agentik_SSOT/skills/quality-arsenal.md +180 -0
- package/omega/Agentik_SSOT/skills/rag-route.md +9 -0
- package/omega/Agentik_SSOT/skills/refontaudit/SKILL.md +165 -0
- package/omega/Agentik_SSOT/skills/retentionaudit/SKILL.md +165 -0
- package/omega/Agentik_SSOT/skills/secaudit/SKILL.md +157 -0
- package/omega/Agentik_SSOT/skills/seoaudit/SKILL.md +161 -0
- package/omega/Agentik_SSOT/skills/skill-auditor/SKILL.md +83 -0
- package/omega/Agentik_SSOT/skills/skill-finder/SKILL.md +116 -0
- package/omega/Agentik_SSOT/skills/uiuxaudit/SKILL.md +165 -0
- package/package.json +2 -2
|
@@ -0,0 +1,462 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: QUALITY-ARSENAL-PREAMBLE
|
|
3
|
+
description: >
|
|
4
|
+
Shared doctrine, invariants, and contracts for all 15 Quality Arsenal forensic
|
|
5
|
+
audits (/codeaudit, /debugaudit, /uiuxaudit, /flowaudit, /featureaudit, /perfaudit,
|
|
6
|
+
/secaudit, /a11yaudit, /seoaudit, /copyaudit, /dxaudit, /motionaudit, /dataaudit,
|
|
7
|
+
/apiaudit, /automationaudit, /logicaudit). Every audit MUST implement these contracts.
|
|
8
|
+
Referenced by /metaudit for compliance verification.
|
|
9
|
+
NOT a user-invokable skill — this is a shared source of truth.
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# Quality Arsenal Preamble v1.0
|
|
13
|
+
|
|
14
|
+
> *"One doctrine, fourteen implementations, zero drift."*
|
|
15
|
+
|
|
16
|
+
Every Gestalt-Popper forensic audit in the Quality Arsenal inherits the contracts below. Deviations are either (a) declared explicitly with rationale, or (b) a bug caught by `/metaudit`.
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## 0. THE FIRST LAW (universal, above all others)
|
|
21
|
+
|
|
22
|
+
> **Code lies. Comments lie. Only runtime tells the truth.**
|
|
23
|
+
|
|
24
|
+
Before any finding, any fix, any conclusion: **observe the actual runtime behavior**. Reading code reveals what the author *intended*. Reading logs, traces, outputs, network dumps, file states reveals what *actually happens*. When they disagree, reality wins.
|
|
25
|
+
|
|
26
|
+
**Applied to every audit:**
|
|
27
|
+
- Before claiming "X is broken" → show the runtime evidence (log line, trace, output, screenshot).
|
|
28
|
+
- Before claiming "X works" → verify at runtime, not by reading the code.
|
|
29
|
+
- Before the 3rd code change on the same bug → add logging, reproduce, observe.
|
|
30
|
+
- When a comment says "X is required" but X's purpose is unclear → test the alternative in isolation.
|
|
31
|
+
- When a fix "should work" but symptoms persist → runtime observation is mandatory before the next attempt.
|
|
32
|
+
|
|
33
|
+
**Anti-pattern catastrophe (2026-04-14):** 2h35 wasted on `tmux paste-buffer -p` because the comment said "-p is required". Runtime test with and without `-p`: only *without* worked. The comment lied for years. See `~/.claude/projects/-home-hacker/memory/feedback_live_debug_first.md` for the full protocol.
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## 1. GESTALT-POPPER DOCTRINE (universal)
|
|
38
|
+
|
|
39
|
+
- **Gestalt clarity gate** — Before any phase runs, identify the *hinge point* of the system under audit (the one element that, if broken, makes everything else worthless). Audit the hinge with 10x scrutiny. Proportional scrutiny elsewhere.
|
|
40
|
+
- **Popper falsification** — Every claim gets a test that could disprove it. A claim that can't be falsified is not a finding, it's an opinion.
|
|
41
|
+
- **Evidence chain** — Every finding has: file:line → what's wrong → why it matters → blast radius → suggested fix. Missing any link = invalid finding.
|
|
42
|
+
- **Adversarial thinking** — For every component: "How would I break this? What if the inputs lie?"
|
|
43
|
+
- **The target is guilty until proven innocent.**
|
|
44
|
+
- **Runtime > code > comments.** When the three disagree, trust them in that order.
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## 2. SCOPED INVOCATION FLAGS (MANDATORY across all 14)
|
|
49
|
+
|
|
50
|
+
Every audit parses these flags identically. Rule 43 (Linear pipeline) depends on this compatibility.
|
|
51
|
+
|
|
52
|
+
| Flag | Effect | Required when |
|
|
53
|
+
|------|--------|---------------|
|
|
54
|
+
| `--url={page_url}` | Scope URL-based walkthroughs to this page | Linear ticket audits |
|
|
55
|
+
| `--files={comma-separated-paths}` | Scope code-side checks to these files | Targeted code fixes |
|
|
56
|
+
| `--scope={1-line description}` | Free-text scope note in outputs | Multi-audit orchestration |
|
|
57
|
+
| `--ticket={TICKET_ID}` | Link audit to Linear ticket, write results to `.linear-fix/{TICKET}/{audit}.json` | Rule 43 pipeline |
|
|
58
|
+
| `--no-fix` | Dry-run scoring only; skip fix execution | Review before authorize |
|
|
59
|
+
| `--focus={area}` | Per-audit narrower scope with FULL phase depth | Targeted concerns |
|
|
60
|
+
|
|
61
|
+
**FORBIDDEN (rule 46):** `--quick`, `--streamlined`, `--lightweight`, `--light`, `--fast`, `--custom`. If present in user prompt → REFUSE with reference to rule 46. Narrower scope uses `--focus` with full depth per phase.
|
|
62
|
+
|
|
63
|
+
**Mandatory combinations:**
|
|
64
|
+
- `--ticket=X` requires `--url=Y` (can't audit a ticket without knowing the page)
|
|
65
|
+
- Rule 43 dispatches MUST provide `--files`, `--url`, `--ticket`
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## 3. CONCURRENCY LOCK (MANDATORY)
|
|
70
|
+
|
|
71
|
+
Every audit acquires a lock at Phase 0 to prevent simultaneous runs from stomping outputs.
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
LOCKFILE=".{audit}/.lock"
|
|
75
|
+
mkdir -p ".{audit}"
|
|
76
|
+
if [ -f "$LOCKFILE" ]; then
|
|
77
|
+
LOCK_AGE=$(($(date +%s) - $(stat -c %Y "$LOCKFILE" 2>/dev/null || echo 0)))
|
|
78
|
+
if [ $LOCK_AGE -lt 14400 ]; then # 4h max; rule 46 allows long audits
|
|
79
|
+
echo "ABORT: another /{audit} holds $LOCKFILE (age ${LOCK_AGE}s, PID $(cat $LOCKFILE))."
|
|
80
|
+
echo "Wait or rm $LOCKFILE if stale."
|
|
81
|
+
exit 1
|
|
82
|
+
fi
|
|
83
|
+
echo "WARNING: stale lockfile (>4h), reclaiming"
|
|
84
|
+
fi
|
|
85
|
+
echo $$ > "$LOCKFILE"
|
|
86
|
+
trap "rm -f $LOCKFILE" EXIT
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Rule 43's parallel DYNAMIC audit chain (`/codeaudit` + `/uiuxaudit` + `/flowaudit` + `/debugaudit` on the same ticket) uses distinct `.{audit}/` directories, so locks don't collide across different audits — only duplicate invocations of the same audit are blocked.
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## 4. PHASE RE-AUDIT CAP (MANDATORY)
|
|
94
|
+
|
|
95
|
+
Fix-and-reaudit loops cap at **5 iterations** (aligned with rule 43 step 8b).
|
|
96
|
+
|
|
97
|
+
```
|
|
98
|
+
iteration = 0
|
|
99
|
+
while score < target_threshold (80 for solo run, 100 for rule-43 ticket audit):
|
|
100
|
+
iteration += 1
|
|
101
|
+
apply fixes from fix-plan.json
|
|
102
|
+
re-run failing phases
|
|
103
|
+
record score trajectory in .{audit}/iterations.md
|
|
104
|
+
if iteration >= 5:
|
|
105
|
+
mark remaining findings as NEEDS_REVIEW in verdict.json
|
|
106
|
+
send Telegram SOS with iterations.md path
|
|
107
|
+
exit loop (do NOT continue indefinitely)
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
Zero tolerance for silent infinite loops. 5 is a hard cap, not a suggestion.
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## 5. NON-UI CONTEXT HANDLING (MANDATORY per audit)
|
|
115
|
+
|
|
116
|
+
Not every project has UI/URLs/flows. Each audit declares its compatibility:
|
|
117
|
+
|
|
118
|
+
| Project type | /codeaudit | /debugaudit | /uiuxaudit | /flowaudit | /featureaudit | /perfaudit | /secaudit | /a11yaudit | /seoaudit | /copyaudit | /dxaudit | /motionaudit | /dataaudit | /apiaudit |
|
|
119
|
+
|--------------|-----------|-------------|-----------|-----------|---------------|-----------|-----------|-----------|-----------|-----------|----------|--------------|-----------|-----------|
|
|
120
|
+
| Web app (URLs) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ (if DB) | ✅ (if API) |
|
|
121
|
+
| Mobile (RN/Expo) | ✅ | partial | ✅ | mobile mode | ✅ | ✅ | ✅ | ✅ | N/A | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
122
|
+
| CLI tool | ✅ | ⚠️ (log-based) | **ABORT** | **ABORT** | ✅ | ✅ (startup/CPU) | ✅ | ✅ (output text) | N/A | ✅ | ✅ (primary!) | **ABORT** | ✅ (if DB) | N/A |
|
|
123
|
+
| Library / SDK | ✅ | N/A | **ABORT** | **ABORT** | ✅ | ✅ | ✅ | N/A | N/A | ✅ (docs) | ✅ | **ABORT** | N/A | ✅ (if API) |
|
|
124
|
+
| Backend-only API | ✅ | partial | **ABORT** | **ABORT** | ✅ | ✅ | ✅ | N/A | N/A | ✅ (docs) | ✅ | **ABORT** | ✅ | ✅ (primary!) |
|
|
125
|
+
| Headless service | ✅ | log-based | **ABORT** | **ABORT** | ✅ | ✅ | ✅ | N/A | N/A | ✅ | ✅ | **ABORT** | ✅ | ✅ |
|
|
126
|
+
|
|
127
|
+
**ABORT behavior**: exit with clear error naming the detected project type and suggesting alternative audits. Never hallucinate findings for missing surfaces.
|
|
128
|
+
|
|
129
|
+
---
|
|
130
|
+
|
|
131
|
+
## 6. OUTPUT CONTRACT VERIFICATION (MANDATORY)
|
|
132
|
+
|
|
133
|
+
Every audit declares outputs. Before reporting success, verify they exist with valid schema.
|
|
134
|
+
|
|
135
|
+
### Required outputs per audit
|
|
136
|
+
|
|
137
|
+
```
|
|
138
|
+
.{audit}/
|
|
139
|
+
├── session.log # timestamps, scope, args, duration
|
|
140
|
+
├── verdict.json # machine-readable score + findings (schema below)
|
|
141
|
+
├── verdict.md # human-readable final report
|
|
142
|
+
├── fix-plan.json # prioritized fix tasks (schema below)
|
|
143
|
+
├── fix-plan.md # human-readable fix plan
|
|
144
|
+
├── iterations.md # score trajectory (iteration 1..N)
|
|
145
|
+
├── progress.json # live progress (for watchers)
|
|
146
|
+
├── telemetry.json # cost + duration (schema below)
|
|
147
|
+
├── fix-log.md # append-only fix execution log
|
|
148
|
+
└── discovery/ # audit-specific inventories
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### verdict.json schema (MANDATORY)
|
|
152
|
+
|
|
153
|
+
```json
|
|
154
|
+
{
|
|
155
|
+
"audit": "<audit-name>", // e.g. "codeaudit"
|
|
156
|
+
"version": "<audit-version>", // e.g. "v2.1"
|
|
157
|
+
"preamble_version": "1.0", // MUST match this file's version
|
|
158
|
+
"skill_used": "<audit-name>", // for rule 43 gate compliance
|
|
159
|
+
"score": 95, // /100 normalized
|
|
160
|
+
"raw_score": 395, // raw score
|
|
161
|
+
"raw_max": 420, // applicable max (N/A phases excluded)
|
|
162
|
+
"grade": "A", // S/A/B/C/D/F
|
|
163
|
+
"scope": {
|
|
164
|
+
"url": "...", // if --url provided
|
|
165
|
+
"files": ["..."], // if --files provided
|
|
166
|
+
"ticket": "...", // if --ticket provided
|
|
167
|
+
"free_text": "..." // if --scope provided
|
|
168
|
+
},
|
|
169
|
+
"phases": [
|
|
170
|
+
{"id": 1, "name": "...", "score": 30, "max": 30, "applicable": true}
|
|
171
|
+
],
|
|
172
|
+
"findings": [
|
|
173
|
+
{
|
|
174
|
+
"id": "F-001",
|
|
175
|
+
"severity": "CRITICAL|HIGH|MEDIUM|LOW",
|
|
176
|
+
"phase": 3,
|
|
177
|
+
"file": "src/auth.ts",
|
|
178
|
+
"line": 42,
|
|
179
|
+
"description": "...",
|
|
180
|
+
"evidence": "...",
|
|
181
|
+
"blast_radius": "...",
|
|
182
|
+
"suggested_fix": "...",
|
|
183
|
+
"cross_audit_confirmations": [] // see below
|
|
184
|
+
}
|
|
185
|
+
],
|
|
186
|
+
"cross_audit_confirmations": [ // ELEVATION MECHANISM
|
|
187
|
+
{
|
|
188
|
+
"finding_id": "F-001", // this audit's finding
|
|
189
|
+
"confirmed_by": "secaudit", // which other audit confirmed
|
|
190
|
+
"confirmed_finding_id": "F-012", // that audit's corresponding finding
|
|
191
|
+
"elevation": "CRITICAL", // elevated severity (both agree = CRITICAL)
|
|
192
|
+
"evidence_path": "audits/.secaudit/verdict.json"
|
|
193
|
+
}
|
|
194
|
+
],
|
|
195
|
+
"iterations": 3, // how many fix-and-reaudit loops
|
|
196
|
+
"needs_review": [], // findings that hit 5-iter cap
|
|
197
|
+
"project_signals_detected": [], // auto-detected from package.json (see §16)
|
|
198
|
+
"timestamp_start": "...",
|
|
199
|
+
"timestamp_end": "..."
|
|
200
|
+
}
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
### Cross-audit finding elevation (ENFORCEMENT)
|
|
204
|
+
|
|
205
|
+
When two audits produce findings on the same file:line or same concern:
|
|
206
|
+
1. The later-running audit checks `.{producer_audit}/verdict.json` for matching findings
|
|
207
|
+
2. If match found: add a `cross_audit_confirmations` entry to its own verdict.json
|
|
208
|
+
3. Both audits agreeing on same file:line = automatic elevation to CRITICAL
|
|
209
|
+
4. /metaudit verifies elevation consistency in its Phase 1 compliance check
|
|
210
|
+
|
|
211
|
+
### telemetry.json schema (MANDATORY)
|
|
212
|
+
|
|
213
|
+
```json
|
|
214
|
+
{
|
|
215
|
+
"audit": "<name>",
|
|
216
|
+
"version": "<version>",
|
|
217
|
+
"duration_sec": 12840,
|
|
218
|
+
"tokens_used": {"input": 450000, "output": 120000},
|
|
219
|
+
"phases_completed": 23,
|
|
220
|
+
"phases_skipped": [14, 18],
|
|
221
|
+
"phases_applicable": 21,
|
|
222
|
+
"fixes_applied": 47,
|
|
223
|
+
"fix_reverts": 3,
|
|
224
|
+
"telegram_notifications_sent": 9,
|
|
225
|
+
"model": "claude-opus-4-6",
|
|
226
|
+
"preamble_version": "1.0"
|
|
227
|
+
}
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
### fix-plan.json schema (MANDATORY)
|
|
231
|
+
|
|
232
|
+
```json
|
|
233
|
+
{
|
|
234
|
+
"audit": "<name>",
|
|
235
|
+
"generated_at": "...",
|
|
236
|
+
"tasks": [
|
|
237
|
+
{
|
|
238
|
+
"id": "FIX-001",
|
|
239
|
+
"finding_id": "F-001",
|
|
240
|
+
"severity": "HIGH",
|
|
241
|
+
"file": "src/auth.ts",
|
|
242
|
+
"line": 42,
|
|
243
|
+
"description": "...",
|
|
244
|
+
"fix": "...",
|
|
245
|
+
"status": "pending|applied|reverted|needs_review",
|
|
246
|
+
"depends_on": ["FIX-000"],
|
|
247
|
+
"attempts": 0
|
|
248
|
+
}
|
|
249
|
+
]
|
|
250
|
+
}
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
### Output gate (MANDATORY, runs at end of audit)
|
|
254
|
+
|
|
255
|
+
```
|
|
256
|
+
1. For each file in the required outputs list:
|
|
257
|
+
- Does it exist? (fail-stop)
|
|
258
|
+
- Does it parse? (JSON: schema check; MD: non-empty)
|
|
259
|
+
- verdict.json.score is a number 0-100
|
|
260
|
+
- verdict.json.skill_used == <audit-name>
|
|
261
|
+
- verdict.json.preamble_version == "1.0"
|
|
262
|
+
2. If any check fails:
|
|
263
|
+
- Do NOT report success
|
|
264
|
+
- Write .{audit}/OUTPUT_GATE_FAILED.md with details
|
|
265
|
+
- Exit non-zero, Telegram SOS
|
|
266
|
+
3. Only mark audit "complete" when all checks pass.
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
---
|
|
270
|
+
|
|
271
|
+
## 7. TELEGRAM PROGRESS CHANNEL (MANDATORY)
|
|
272
|
+
|
|
273
|
+
Every audit sends structured notifications. Use helper: `~/.aisb/bin/audit-notify.sh <audit> <event> <details>`.
|
|
274
|
+
|
|
275
|
+
| Event | Timing | Content |
|
|
276
|
+
|-------|--------|---------|
|
|
277
|
+
| `start` | Phase 0 begin | `🚦 /{audit} started on {project} — scope: {scope}` |
|
|
278
|
+
| `progress` | Every 3 phases completed | `📊 /{audit} phase {N}/{total} complete — {phase_name}` |
|
|
279
|
+
| `iteration` | Each fix-and-reaudit cycle | `🔁 /{audit} iteration {N}/5 — score trajectory: {prev} → {curr}` |
|
|
280
|
+
| `verdict` | Phase 21 (final score) | `🎯 /{audit} done — score {X}/100 — see {verdict.md path}` |
|
|
281
|
+
| `abort` | Any ABORT condition | `🛑 /{audit} aborted — reason: {reason}` |
|
|
282
|
+
| `sos` | 5-iter cap, lock collision, output-gate fail, unrecoverable error | `🆘 /{audit} SOS — {diag_file_path}` |
|
|
283
|
+
|
|
284
|
+
---
|
|
285
|
+
|
|
286
|
+
## 8. DISCOVERY-DRIFT CHECK (MANDATORY on resumed audits)
|
|
287
|
+
|
|
288
|
+
If `.{audit}/discovery/` exists and is older than 1h:
|
|
289
|
+
1. Re-run light discovery pass
|
|
290
|
+
2. Diff against existing inventory
|
|
291
|
+
3. If diff detected: flag as DRIFT, abort or user-confirm
|
|
292
|
+
4. Never trust stale discovery — the codebase moves
|
|
293
|
+
|
|
294
|
+
---
|
|
295
|
+
|
|
296
|
+
## 9. SELF-TELEMETRY (MANDATORY)
|
|
297
|
+
|
|
298
|
+
Emit `.{audit}/telemetry.json` at completion (schema in §6). Used by `/metaudit` + capacity planning.
|
|
299
|
+
|
|
300
|
+
---
|
|
301
|
+
|
|
302
|
+
## 10. DEPRECATION REGISTRY
|
|
303
|
+
|
|
304
|
+
Check `~/.claude/DEPRECATED.md` for deprecated skill/command names before invoking cross-references. If an audit references a deprecated name, surface it as a finding.
|
|
305
|
+
|
|
306
|
+
Current known deprecations (as of 2026-04-14):
|
|
307
|
+
- `/hunt` → `/debugaudit` (renamed 2026-03-26)
|
|
308
|
+
- `/delegate` → route via `/ceo`, `/cto`, `/cmo`, `/cpo` (never implemented as standalone)
|
|
309
|
+
- `/remotion` → removed (no replacement; use `/creative_director` pipeline instead)
|
|
310
|
+
- `/head_of_marketing` → `/cmo` or `/content-strategy` skill
|
|
311
|
+
- `/landing_page_analysis` → `/market landing`
|
|
312
|
+
- `/website_brand_analysis` → `/market brand`
|
|
313
|
+
- `/ad_creative_analysis` → `/ads_analyst`
|
|
314
|
+
- `/performance_marketer` → `/market` suite skills
|
|
315
|
+
- `/bmad` → removed
|
|
316
|
+
|
|
317
|
+
---
|
|
318
|
+
|
|
319
|
+
## 11. INTEGRATION SMOKE TEST (MANDATORY in fix gate for code-touching audits)
|
|
320
|
+
|
|
321
|
+
Any audit that modifies code (/codeaudit, /debugaudit, /uiuxaudit, /flowaudit, /featureaudit, /perfaudit, /a11yaudit, /apiaudit, /dataaudit, /copyaudit, /seoaudit, /motionaudit) MUST run integration smoke tests in Phase 23 fix gate:
|
|
322
|
+
|
|
323
|
+
```
|
|
324
|
+
1. Detect integrations from package.json + env vars:
|
|
325
|
+
- Composio: @composio/sdk, COMPOSIO_API_KEY
|
|
326
|
+
- MCP: @modelcontextprotocol/*, MCP server configs
|
|
327
|
+
- Stripe: stripe, STRIPE_SECRET_KEY
|
|
328
|
+
- Clerk: @clerk/*, CLERK_SECRET_KEY
|
|
329
|
+
- Convex: convex, CONVEX_URL
|
|
330
|
+
- Trigger.dev: @trigger.dev/sdk, TRIGGER_SECRET_KEY
|
|
331
|
+
- Linear: LINEAR_API_KEY
|
|
332
|
+
2. For each detected integration, run smoke test:
|
|
333
|
+
- Stripe: fetch account.retrieve() with test key
|
|
334
|
+
- Clerk: verify JWT template exists
|
|
335
|
+
- Convex: npx convex dev --once (dry validate)
|
|
336
|
+
- Composio: npx composio ping
|
|
337
|
+
- MCP: test handshake
|
|
338
|
+
3. Post-fix, re-run the same smoke tests
|
|
339
|
+
4. If any integration breaks post-fix → revert → mark NEEDS_REVIEW
|
|
340
|
+
5. Memory basis: "fixes must NEVER break working integrations"
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
Read-only audits (/copyaudit text-only mode, /secaudit in dry-run) may skip this gate.
|
|
344
|
+
|
|
345
|
+
---
|
|
346
|
+
|
|
347
|
+
## 12. RATE-LIMIT SAFETY (MANDATORY for audits that fuzz or hit APIs)
|
|
348
|
+
|
|
349
|
+
/secaudit + /apiaudit make external requests. They MUST respect:
|
|
350
|
+
|
|
351
|
+
```
|
|
352
|
+
- Max 10 req/s default (override: --rate-limit-override=<N> for authorized tests)
|
|
353
|
+
- Abort on 3 consecutive 429 or 503 responses
|
|
354
|
+
- Never run against production without explicit --prod flag + confirmation
|
|
355
|
+
- Self-pentest (target = own audit infra) ABORT with "not supported — manual review required"
|
|
356
|
+
```
|
|
357
|
+
|
|
358
|
+
---
|
|
359
|
+
|
|
360
|
+
## 13. SCORE NORMALIZATION (MANDATORY)
|
|
361
|
+
|
|
362
|
+
Each audit has its own raw max (varies 280-420 across family). All report to /100:
|
|
363
|
+
|
|
364
|
+
```
|
|
365
|
+
normalized = round((raw_score / applicable_raw_max) * 100)
|
|
366
|
+
```
|
|
367
|
+
|
|
368
|
+
Where `applicable_raw_max` excludes phases marked N/A for the project type.
|
|
369
|
+
|
|
370
|
+
Grade boundaries:
|
|
371
|
+
- 90-100: S (Fortress)
|
|
372
|
+
- 80-89: A (Solid)
|
|
373
|
+
- 70-79: B (Good)
|
|
374
|
+
- 60-69: C (Acceptable)
|
|
375
|
+
- 50-59: D (Risky)
|
|
376
|
+
- <50: F (Condemned)
|
|
377
|
+
|
|
378
|
+
---
|
|
379
|
+
|
|
380
|
+
## 14. RULE-46 COMPLIANCE (MANDATORY)
|
|
381
|
+
|
|
382
|
+
No audit may:
|
|
383
|
+
- Offer `--quick` / `--streamlined` / `--lightweight` / `--light` / `--fast` / `--custom` modes
|
|
384
|
+
- Substitute "lighter" protocols for phases
|
|
385
|
+
- Skip phases "to save time"
|
|
386
|
+
- Accept "streamlined" instructions from orchestrators — REFUSE and raise alert
|
|
387
|
+
|
|
388
|
+
Narrower scope is achieved via `--focus` flag with FULL phase depth, never degraded depth.
|
|
389
|
+
|
|
390
|
+
---
|
|
391
|
+
|
|
392
|
+
## 15. AUDIT REGISTRY
|
|
393
|
+
|
|
394
|
+
| Audit | Max | Phases | Non-UI ABORT | Code-touching | External-fetch | Specialty |
|
|
395
|
+
|-------|-----|--------|-------------|---------------|----------------|-----------|
|
|
396
|
+
| /codeaudit | 420 | 24 | No | Yes | No | SOLID, phantoms, deps |
|
|
397
|
+
| /debugaudit | 360 | 23 | Partial | Yes | No | Runtime bugs, console |
|
|
398
|
+
| /uiuxaudit | 420 | 25 | Yes | Yes | No | Visual coherence |
|
|
399
|
+
| /flowaudit | 400 | 25 | Yes | Yes | No | User journeys |
|
|
400
|
+
| /featureaudit | 320 | 19 | No | Yes | Yes (WebSearch) | PRD completeness |
|
|
401
|
+
| /perfaudit | 360 | 23 | No | Yes | No | Core Web Vitals |
|
|
402
|
+
| /secaudit | 400 | 25 | No | Yes | Yes (fuzz) | OWASP Top 10 |
|
|
403
|
+
| /a11yaudit | 320 | 21 | Partial | Yes | No | WCAG 2.1 AA |
|
|
404
|
+
| /seoaudit | 400 | 25 | Partial | Yes | Yes (crawl) | Crawlability, GEO |
|
|
405
|
+
| /copyaudit | 280 | 19 | No | Yes | No | Claims vs reality |
|
|
406
|
+
| /dxaudit | 320 | 21 | No | Yes | No | Developer onboarding |
|
|
407
|
+
| /motionaudit | 360 | 23 | Yes | Yes | No | Motion purpose |
|
|
408
|
+
| /dataaudit | 320 | 21 | No | **Yes (DESTRUCTIVE)** | No | Schema + integrity |
|
|
409
|
+
| /apiaudit | 360 | 23 | No | Yes | Yes (fuzz) | REST/GraphQL contracts |
|
|
410
|
+
|
|
411
|
+
---
|
|
412
|
+
|
|
413
|
+
## 16. PROJECT SIGNAL DETECTION (auto-dispatch intelligence)
|
|
414
|
+
|
|
415
|
+
Before dispatching audits based on keyword matching alone, Oracle/AISB SHOULD read the project's actual signals to auto-suggest relevant audit focuses:
|
|
416
|
+
|
|
417
|
+
```bash
|
|
418
|
+
# Auto-detect from package.json + env vars + file structure
|
|
419
|
+
has_convex = grep -q "convex" package.json → /dataaudit relevant
|
|
420
|
+
has_clerk = grep -q "@clerk" package.json → /secaudit --focus=auth
|
|
421
|
+
has_stripe = grep -q "stripe" package.json → /flowaudit --focus=payment
|
|
422
|
+
has_i18n = grep -qE "next-intl|i18next|lingui" → /copyaudit --focus=i18n + /a11yaudit --focus=rtl
|
|
423
|
+
has_prisma = test -d prisma/ → /dataaudit + /apiaudit
|
|
424
|
+
has_graphql = test -f schema.graphql → /apiaudit --mode=graphql
|
|
425
|
+
has_ci = test -f .github/workflows/*.yml → /dxaudit --focus=cicd
|
|
426
|
+
has_motion = grep -qE "framer-motion|gsap|three" → /motionaudit relevant
|
|
427
|
+
has_tailwind = test -f tailwind.config.* → /uiuxaudit relevant
|
|
428
|
+
no_ui = ! grep -qE "react|vue|svelte|next" → ABORT /uiuxaudit /flowaudit /motionaudit
|
|
429
|
+
```
|
|
430
|
+
|
|
431
|
+
Emit detected signals in verdict.json as `project_signals_detected: ["convex", "clerk", "stripe", ...]`.
|
|
432
|
+
|
|
433
|
+
This makes dispatch SMARTER than keyword-only routing. Example: user says "audit everything" on a Convex+Clerk+Stripe project → system auto-focuses /dataaudit on Convex schema, /secaudit on Clerk auth, /flowaudit on Stripe payment flows — without the user having to specify.
|
|
434
|
+
|
|
435
|
+
---
|
|
436
|
+
|
|
437
|
+
## 17. PREAMBLE SELF-CHECK (auto-drift detection)
|
|
438
|
+
|
|
439
|
+
Every audit invocation runs a lightweight Phase 0 pre-flight that verifies its OWN preamble compliance before starting the full pipeline:
|
|
440
|
+
|
|
441
|
+
```bash
|
|
442
|
+
# 10-second pre-flight (negligible cost)
|
|
443
|
+
AUDIT_FILE="~/.claude/commands/${AUDIT_NAME}.md"
|
|
444
|
+
PREAMBLE="~/.claude/commands/QUALITY-ARSENAL-PREAMBLE.md"
|
|
445
|
+
|
|
446
|
+
# Check preamble exists
|
|
447
|
+
test -f "$PREAMBLE" || { echo "ABORT: Preamble missing. Run /metaudit."; exit 1; }
|
|
448
|
+
|
|
449
|
+
# Check own file declares preamble_version
|
|
450
|
+
grep -q 'preamble_version.*1\.0' "$AUDIT_FILE" || { echo "WARN: ${AUDIT_NAME} may not be preamble-compliant. Run /metaudit --focus preamble."; }
|
|
451
|
+
|
|
452
|
+
# Check own compliance_score
|
|
453
|
+
grep -q '"compliance_score": 100' "$AUDIT_FILE" || { echo "WARN: ${AUDIT_NAME} compliance < 100. Run /metaudit --focus arsenal."; }
|
|
454
|
+
```
|
|
455
|
+
|
|
456
|
+
This catches drift at the moment it matters — when an audit is about to execute — rather than waiting for a manual /metaudit invocation.
|
|
457
|
+
|
|
458
|
+
---
|
|
459
|
+
|
|
460
|
+
*Preamble v1.1 — 2026-04-14. Added §16 (project signal detection) + §17 (preamble self-check).*
|
|
461
|
+
*Referenced by all 14 audits + /metaudit compliance scanner.*
|
|
462
|
+
*One doctrine, fourteen implementations, zero drift.*
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# Design-discipline skill marketplace
|
|
2
|
+
#
|
|
3
|
+
# Curated catalog of design skills OmegaOS expects to be installed
|
|
4
|
+
# globally on the host. The installer (step 25-aisb-suite or
|
|
5
|
+
# `omega design install`) pulls each one and lands it under
|
|
6
|
+
# ~/.claude/skills/<id>/.
|
|
7
|
+
#
|
|
8
|
+
# These are NOT OmegaOS-authored skills — they're upstream skills the
|
|
9
|
+
# OmegaOS contract REQUIRES because Genesis writes feature briefs that
|
|
10
|
+
# reference them by name (skill: "/shadcn-ui + /emil-design-eng + …").
|
|
11
|
+
#
|
|
12
|
+
# Update protocol: bump the source SHA when the upstream skill ships a
|
|
13
|
+
# breaking change. Workers see the new content on the next `omega sync`.
|
|
14
|
+
|
|
15
|
+
version: 1
|
|
16
|
+
kind: design-discipline
|
|
17
|
+
recommended_for_roles: [worker_ui, worker_growth]
|
|
18
|
+
skills:
|
|
19
|
+
- id: shadcn-ui
|
|
20
|
+
source: bundled # bundled with Claude Code
|
|
21
|
+
discovery: "/shadcn-ui"
|
|
22
|
+
purpose: "Every component from https://ui.shadcn.com/docs/components"
|
|
23
|
+
required: true
|
|
24
|
+
|
|
25
|
+
- id: emil-design-eng
|
|
26
|
+
source: "github:emilkowalski/skill"
|
|
27
|
+
install: "npx skills add emilkowalski/skill"
|
|
28
|
+
discovery: "/emil-design-eng"
|
|
29
|
+
purpose: "Design engineering discipline — tactile, motion-aware, subtle"
|
|
30
|
+
why: "Sets the bar for what 'good design' means at the engineering layer."
|
|
31
|
+
required: true
|
|
32
|
+
|
|
33
|
+
- id: impeccable
|
|
34
|
+
source: "github:pbakaus/impeccable"
|
|
35
|
+
install: "npx skills add pbakaus/impeccable"
|
|
36
|
+
discovery: "/impeccable"
|
|
37
|
+
purpose: "Pixel-level craft — no half-baked components, no inconsistent spacing"
|
|
38
|
+
why: "Catches the gap between 'works' and 'feels finished'."
|
|
39
|
+
required: true
|
|
40
|
+
|
|
41
|
+
- id: taste-skill
|
|
42
|
+
source: "github:Leonxlnx/taste-skill"
|
|
43
|
+
install: "npx skills add Leonxlnx/taste-skill"
|
|
44
|
+
homepage: "https://www.tasteskill.dev"
|
|
45
|
+
discovery: "/taste-skill"
|
|
46
|
+
purpose: "Taste calibration across typography, colour, hierarchy, motion"
|
|
47
|
+
required: true
|
|
48
|
+
|
|
49
|
+
- id: frontend-design
|
|
50
|
+
source: bundled # Anthropic-bundled
|
|
51
|
+
discovery: "/frontend-design"
|
|
52
|
+
purpose: "High-quality production-grade frontend code generator"
|
|
53
|
+
required: false
|
|
54
|
+
|
|
55
|
+
- id: design-taste-frontend
|
|
56
|
+
source: bundled
|
|
57
|
+
discovery: "/design-taste-frontend"
|
|
58
|
+
purpose: "Taste applied at the frontend layer"
|
|
59
|
+
required: false
|
|
60
|
+
|
|
61
|
+
- id: gpt-taste
|
|
62
|
+
source: bundled
|
|
63
|
+
discovery: "/gpt-taste"
|
|
64
|
+
purpose: "Taste comparison + improvement"
|
|
65
|
+
required: false
|
|
66
|
+
|
|
67
|
+
# Components — every shadcn component is in scope by default for any
|
|
68
|
+
# UI feature. Workers should reference these by name.
|
|
69
|
+
shadcn_components:
|
|
70
|
+
scope: "everything at https://ui.shadcn.com/docs/components"
|
|
71
|
+
ranked_for_v1:
|
|
72
|
+
- button
|
|
73
|
+
- card
|
|
74
|
+
- input
|
|
75
|
+
- select
|
|
76
|
+
- dialog
|
|
77
|
+
- sheet
|
|
78
|
+
- tabs
|
|
79
|
+
- toast
|
|
80
|
+
- tooltip
|
|
81
|
+
- dropdown-menu
|
|
82
|
+
- command
|
|
83
|
+
- form
|
|
84
|
+
- data-table
|
|
85
|
+
- calendar
|
|
86
|
+
- popover
|