coding-os 0.3.2__py3-none-any.whl
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.
- adapters/claude/README.md +6 -0
- adapters/claude/_install_helpers/extract_stacks.py +43 -0
- adapters/claude/_install_helpers/update_mcp_json.py +75 -0
- adapters/claude/adapter.yaml +164 -0
- adapters/claude/hooks/README.md +40 -0
- adapters/claude/hooks/agent_memory_sync.py +131 -0
- adapters/claude/hooks/ensure-agent-memory-link.sh +36 -0
- adapters/claude/hooks/sync-agent-memory.sh +21 -0
- adapters/claude/install.sh +86 -0
- adapters/claude/sdk_dispatcher.py +871 -0
- adapters/claude/settings.local.template.json +31 -0
- adapters/claude/settings.template.json +808 -0
- adapters/claude/update_mcp_json.py +85 -0
- adapters/codex/adapter.yaml +254 -0
- adapters/codex/chat_provider.py +230 -0
- adapters/codex/commands/formula-f1.md +129 -0
- adapters/codex/commands/formula-f10.md +100 -0
- adapters/codex/commands/formula-f11.md +123 -0
- adapters/codex/commands/formula-f2.md +139 -0
- adapters/codex/commands/formula-f3.md +127 -0
- adapters/codex/commands/formula-f4.md +101 -0
- adapters/codex/commands/formula-f5.md +135 -0
- adapters/codex/commands/formula-f6.md +147 -0
- adapters/codex/commands/formula-f7.md +111 -0
- adapters/codex/commands/formula-f8.md +133 -0
- adapters/codex/commands/formula-f9.md +112 -0
- adapters/codex/enable_codex_hooks.py +94 -0
- adapters/codex/ensure_codex_mcp.py +124 -0
- adapters/codex/hooks/codex-merge-hook-output.py +72 -0
- adapters/codex/hooks/codex-normalize-edit.py +96 -0
- adapters/codex/hooks/codex-postedit-dispatch.sh +75 -0
- adapters/codex/hooks/codex-posttool-dispatch.sh +70 -0
- adapters/codex/hooks/codex-preedit-dispatch.sh +83 -0
- adapters/codex/hooks/codex-pretool-dispatch.sh +82 -0
- adapters/codex/hooks/codex-sessionend-dispatch.sh +20 -0
- adapters/codex/hooks/codex-sessionstart-dispatch.sh +68 -0
- adapters/codex/hooks/codex-stop-dispatch.sh +73 -0
- adapters/codex/hooks/codex-userpromptsubmit-dispatch.sh +74 -0
- adapters/codex/hooks.template.json +208 -0
- adapters/codex/install.sh +83 -0
- adapters/codex/sdk_dispatcher.py +449 -0
- board_os/__init__.py +39 -0
- board_os/_agent_runtime.py +256 -0
- board_os/config.py +421 -0
- board_os/git_coherence.py +107 -0
- board_os/hub_adapter_manifest.py +140 -0
- board_os/mcp_tools.py +3228 -0
- board_os/migration.py +166 -0
- board_os/parser.py +317 -0
- board_os/presence.py +156 -0
- board_os/sync.py +320 -0
- board_os/transition_gates.py +224 -0
- board_os/transition_gates_cli.py +272 -0
- board_os/transition_gates_validator.py +551 -0
- board_os/verify_suites.py +126 -0
- board_os/verify_suites_cli.py +328 -0
- board_os/workflow.py +967 -0
- cli/__init__.py +0 -0
- cli/_data_types.py +248 -0
- cli/_init_helpers.py +587 -0
- cli/_resources.py +100 -0
- cli/adapter_registry.py +239 -0
- cli/add_stack.py +315 -0
- cli/aggregator.py +438 -0
- cli/board_commands.py +1218 -0
- cli/brain_commands.py +255 -0
- cli/cognition.py +345 -0
- cli/config_composer.py +349 -0
- cli/core_version.py +41 -0
- cli/cron_commands.py +278 -0
- cli/db_reset.py +298 -0
- cli/doc_commands.py +111 -0
- cli/doctor.py +2953 -0
- cli/doctor_board.py +365 -0
- cli/doctor_extras.py +1121 -0
- cli/doctor_graph.py +608 -0
- cli/doctor_tokens.py +254 -0
- cli/graph_commands.py +1265 -0
- cli/hook_renderer.py +393 -0
- cli/hub_commands.py +580 -0
- cli/list_adapters.py +79 -0
- cli/list_stacks.py +105 -0
- cli/logs_commands.py +89 -0
- cli/main.py +3070 -0
- cli/materialize_file.py +65 -0
- cli/mcp_start.py +153 -0
- cli/module_commands.py +513 -0
- cli/pr_commands.py +2024 -0
- cli/preset_commands.py +126 -0
- cli/preset_registry.py +171 -0
- cli/project_overrides.py +119 -0
- cli/registry.py +365 -0
- cli/remove_stack.py +492 -0
- cli/renderer.py +620 -0
- cli/setup.py +464 -0
- cli/skill_commands.py +689 -0
- cli/skill_registry.py +235 -0
- cli/skills_list.py +332 -0
- cli/stack_lint.py +351 -0
- cli/stack_registry.py +688 -0
- cli/subsystems.py +335 -0
- cli/sync_all.py +310 -0
- cli/tail_command.py +410 -0
- cli/update.py +608 -0
- cli/verify_since_edit.py +439 -0
- coding_os-0.3.2.dist-info/METADATA +508 -0
- coding_os-0.3.2.dist-info/RECORD +1304 -0
- coding_os-0.3.2.dist-info/WHEEL +5 -0
- coding_os-0.3.2.dist-info/entry_points.txt +5 -0
- coding_os-0.3.2.dist-info/licenses/LICENSE +201 -0
- coding_os-0.3.2.dist-info/top_level.txt +10 -0
- core/__init__.py +0 -0
- core/board_os/__init__.py +39 -0
- core/board_os/_agent_runtime.py +256 -0
- core/board_os/config.py +421 -0
- core/board_os/git_coherence.py +107 -0
- core/board_os/hub_adapter_manifest.py +140 -0
- core/board_os/mcp_tools.py +3228 -0
- core/board_os/migration.py +166 -0
- core/board_os/parser.py +317 -0
- core/board_os/presence.py +156 -0
- core/board_os/sync.py +320 -0
- core/board_os/transition-gates.yaml +176 -0
- core/board_os/transition_gates.py +224 -0
- core/board_os/transition_gates_cli.py +272 -0
- core/board_os/transition_gates_validator.py +551 -0
- core/board_os/verify-suites.yaml +113 -0
- core/board_os/verify_suites.py +126 -0
- core/board_os/verify_suites_cli.py +328 -0
- core/board_os/workflow.py +967 -0
- core/commands/board.md +27 -0
- core/commands/classify.md +23 -0
- core/commands/compose.md +23 -0
- core/commands/daily.md +31 -0
- core/commands/diagnose.md +7 -0
- core/commands/memory-search.md +23 -0
- core/commands/new-project.md +33 -0
- core/commands/retro.md +38 -0
- core/commands/review.md +14 -0
- core/commands/task.md +17 -0
- core/commands/verify.md +34 -0
- core/docs/thinking_os-final-edition.md +1449 -0
- core/doctor-config.yaml +74 -0
- core/graph_os/__init__.py +29 -0
- core/graph_os/backend.py +233 -0
- core/graph_os/backends/__init__.py +13 -0
- core/graph_os/backends/sqlite_backend.py +1053 -0
- core/graph_os/bench/__init__.py +17 -0
- core/graph_os/bench/fixtures.py +56 -0
- core/graph_os/bench/harness.py +95 -0
- core/graph_os/bench/persian_precision.py +142 -0
- core/graph_os/bench/scale_500k.py +120 -0
- core/graph_os/bench/token_cost.py +170 -0
- core/graph_os/bench/viewer_fps.py +110 -0
- core/graph_os/communities.py +410 -0
- core/graph_os/enterprise.py +218 -0
- core/graph_os/entry_points.py +226 -0
- core/graph_os/extractors/__init__.py +25 -0
- core/graph_os/extractors/code_generic.py +914 -0
- core/graph_os/extractors/code_go.py +1422 -0
- core/graph_os/extractors/code_json.py +340 -0
- core/graph_os/extractors/code_php.py +979 -0
- core/graph_os/extractors/code_python.py +1454 -0
- core/graph_os/extractors/code_shell.py +538 -0
- core/graph_os/extractors/code_toml.py +302 -0
- core/graph_os/extractors/code_ts.py +1665 -0
- core/graph_os/extractors/code_yaml.py +394 -0
- core/graph_os/extractors/contracts.py +1592 -0
- core/graph_os/extractors/md_links.py +890 -0
- core/graph_os/extractors/task_deps.py +345 -0
- core/graph_os/groups/__init__.py +22 -0
- core/graph_os/groups/cross_repo.py +156 -0
- core/graph_os/groups/manifest.py +141 -0
- core/graph_os/ingest/__init__.py +19 -0
- core/graph_os/ingest/base.py +306 -0
- core/graph_os/ingest/github.py +112 -0
- core/graph_os/ingest/zip.py +95 -0
- core/graph_os/toolchain.py +393 -0
- core/graph_os/tools/__init__.py +9 -0
- core/graph_os/tools/graph.py +5573 -0
- core/graph_os/tools/reindex_dispatch.py +730 -0
- core/graph_os/tree_sitter_overlay.py +235 -0
- core/graph_os/types.py +252 -0
- core/graph_os/vec_index.py +277 -0
- core/graph_os/viewer/__init__.py +12 -0
- core/graph_os/viewer/exporter.py +93 -0
- core/graph_os/viewer/template.py +189 -0
- core/hooks/_helpers/_paths.py +40 -0
- core/hooks/_helpers/advance_role.py +72 -0
- core/hooks/_helpers/auto_compose.py +228 -0
- core/hooks/_helpers/auto_validate_lessons.py +55 -0
- core/hooks/_helpers/branch_guard_check.py +796 -0
- core/hooks/_helpers/check_commit_message.py +108 -0
- core/hooks/_helpers/check_dangerous_rm.py +80 -0
- core/hooks/_helpers/check_git_bypass.py +154 -0
- core/hooks/_helpers/check_git_destructive.py +77 -0
- core/hooks/_helpers/check_settings_write.py +97 -0
- core/hooks/_helpers/consume_override.py +51 -0
- core/hooks/_helpers/context_budget.py +77 -0
- core/hooks/_helpers/cos_say_json.py +103 -0
- core/hooks/_helpers/destructive_edit_check.py +163 -0
- core/hooks/_helpers/detect_status_transition.py +82 -0
- core/hooks/_helpers/digest_regen.py +56 -0
- core/hooks/_helpers/doc_sync_check.py +498 -0
- core/hooks/_helpers/drain_embedding_outbox.py +52 -0
- core/hooks/_helpers/extract_additional_context.py +51 -0
- core/hooks/_helpers/extract_commit_msg_arg.py +74 -0
- core/hooks/_helpers/git_command_parse.py +424 -0
- core/hooks/_helpers/git_settings_fields.py +47 -0
- core/hooks/_helpers/graph_context_match.py +37 -0
- core/hooks/_helpers/graph_marker_check.py +70 -0
- core/hooks/_helpers/jit_recall.py +56 -0
- core/hooks/_helpers/json_field.py +41 -0
- core/hooks/_helpers/narrative_signal.py +59 -0
- core/hooks/_helpers/observation_count.py +31 -0
- core/hooks/_helpers/pre_commit_batch.py +177 -0
- core/hooks/_helpers/pre_commit_fake_input.py +42 -0
- core/hooks/_helpers/presence_gc.py +102 -0
- core/hooks/_helpers/presence_write.py +167 -0
- core/hooks/_helpers/recover_indirect.py +35 -0
- core/hooks/_helpers/routing_evolution.py +104 -0
- core/hooks/_helpers/session_recap.py +72 -0
- core/hooks/_helpers/skill_primer.py +229 -0
- core/hooks/_helpers/task_sync.py +59 -0
- core/hooks/_helpers/tool_failure_capture.py +147 -0
- core/hooks/_helpers/trajectory_autosnap.py +278 -0
- core/hooks/_helpers/trajectory_startup.py +62 -0
- core/hooks/_helpers/turn_summary.py +82 -0
- core/hooks/_helpers/validate_task_frontmatter.py +98 -0
- core/hooks/_helpers/wip_limit_check.py +103 -0
- core/hooks/_helpers/wip_lines.py +53 -0
- core/hooks/_helpers/work_log_append.py +89 -0
- core/hooks/_helpers/wrap_dispatch_output.py +82 -0
- core/hooks/advance-role.sh +48 -0
- core/hooks/agent-presence.sh +179 -0
- core/hooks/auto-brain-decay.sh +184 -0
- core/hooks/auto-compose-roles.sh +83 -0
- core/hooks/auto-graph-reconcile-shell.sh +119 -0
- core/hooks/auto-regen-doc-index.sh +120 -0
- core/hooks/auto-reindex-docs.sh +130 -0
- core/hooks/auto-task-sync.sh +56 -0
- core/hooks/auto-trace-rotate.sh +88 -0
- core/hooks/block-bad-patterns.sh +212 -0
- core/hooks/block-dangerous-commands.sh +182 -0
- core/hooks/block-hardcoded-literals.sh +90 -0
- core/hooks/block-migration-conflict.sh +114 -0
- core/hooks/block-protected-files.sh +129 -0
- core/hooks/block-secrets.sh +185 -0
- core/hooks/block-shared-tree-edit.sh +75 -0
- core/hooks/block-uv-heredoc.sh +78 -0
- core/hooks/branch-guard.sh +122 -0
- core/hooks/capture-observation.sh +76 -0
- core/hooks/capture-tool-failure.sh +24 -0
- core/hooks/capture-work-log.sh +89 -0
- core/hooks/check-agents-md-refs.sh +75 -0
- core/hooks/check-agents-md-size.sh +49 -0
- core/hooks/check-capture-worked.sh +148 -0
- core/hooks/check-doc-size.sh +61 -0
- core/hooks/check-mcp-extras.sh +92 -0
- core/hooks/check-state.sh +87 -0
- core/hooks/classify-task-mode.sh +103 -0
- core/hooks/cos-env.sh +1301 -0
- core/hooks/drain-embedding-outbox.sh +24 -0
- core/hooks/enforce-anti-ambiguity.sh +74 -0
- core/hooks/enforce-commit-message.sh +73 -0
- core/hooks/enforce-doc-anchor.sh +224 -0
- core/hooks/enforce-doc-sync.sh +206 -0
- core/hooks/enforce-graph-context.sh +89 -0
- core/hooks/enforce-graph-first-read.sh +94 -0
- core/hooks/enforce-memory-check.sh +128 -0
- core/hooks/enforce-rename-plan.sh +78 -0
- core/hooks/enforce-scaffold-boundary.sh +68 -0
- core/hooks/enforce-skill.sh +125 -0
- core/hooks/enforce-task-body.sh +52 -0
- core/hooks/enforce-task-start.sh +81 -0
- core/hooks/enforce-task-transition.sh +75 -0
- core/hooks/enforce-template.sh +143 -0
- core/hooks/enforce-verify.sh +112 -0
- core/hooks/enforce-wip-limit.sh +43 -0
- core/hooks/enforce-zoom.sh +69 -0
- core/hooks/ensure-hub-up.sh +67 -0
- core/hooks/inject-mcp-caller-session.sh +70 -0
- core/hooks/jit-recall.sh +65 -0
- core/hooks/link-commit-to-task.sh +143 -0
- core/hooks/lint-task.sh +40 -0
- core/hooks/nudge-docs-first.sh +71 -0
- core/hooks/nudge-git-mode.sh +29 -0
- core/hooks/nudge-graph-os.sh +118 -0
- core/hooks/nudge-learn-narrative.sh +36 -0
- core/hooks/nudge-model-routing.sh +32 -0
- core/hooks/nudge-reentry.sh +101 -0
- core/hooks/nudge-reuse-first.sh +68 -0
- core/hooks/nudge-task-discovery.sh +81 -0
- core/hooks/nudge-thinking-os.sh +109 -0
- core/hooks/pr-reap.sh +23 -0
- core/hooks/reclaim-sweep.sh +58 -0
- core/hooks/record-verify-auto.sh +77 -0
- core/hooks/record-verify.sh +74 -0
- core/hooks/regen-reminder.sh +104 -0
- core/hooks/registry.yaml +1262 -0
- core/hooks/remind-daily.sh +27 -0
- core/hooks/remind-dogfood.sh +70 -0
- core/hooks/remind-learn-validate.sh +94 -0
- core/hooks/rules-primer.sh +50 -0
- core/hooks/search-enforce-inventory.sh +108 -0
- core/hooks/search-verify-remaining.sh +132 -0
- core/hooks/session-context.sh +729 -0
- core/hooks/session-end.sh +145 -0
- core/hooks/session-skill-primer.sh +43 -0
- core/hooks/snapshot-transcript.sh +56 -0
- core/hooks/sync-task-current.sh +85 -0
- core/hooks/test-first-reminder.sh +120 -0
- core/hooks/test-governor.sh +173 -0
- core/hooks/thinking_os-gate.sh +52 -0
- core/hooks/track-backtrack.sh +35 -0
- core/hooks/track-discovery.sh +121 -0
- core/hooks/track-skill.sh +53 -0
- core/hooks/validate-task-frontmatter.sh +49 -0
- core/hooks/verify-rename-callers.sh +119 -0
- core/hooks/warn-abandoned-task.sh +99 -0
- core/hooks/warn-destructive-edit.sh +64 -0
- core/hooks/warn-diff-size.sh +43 -0
- core/hooks/warn-graph-empty.sh +81 -0
- core/hooks/warn-mcp-down.sh +190 -0
- core/hooks/write-state.sh +55 -0
- core/logging_os/__init__.py +33 -0
- core/logging_os/api.py +127 -0
- core/logging_os/bridge.py +80 -0
- core/logging_os/config.py +172 -0
- core/logging_os/fingerprint.py +25 -0
- core/logging_os/redact.py +53 -0
- core/logging_os/render.py +83 -0
- core/logging_os/sinks.py +164 -0
- core/rules/anti-overengineering.md +44 -0
- core/rules/api-contract-discipline.md +41 -0
- core/rules/dimension-registry.md +155 -0
- core/rules/git-workflow.md +57 -0
- core/rules/memory.md +46 -0
- core/rules/model-routing.md +22 -0
- core/rules/skill-enforcement.md +75 -0
- core/rules/test-discipline.md +38 -0
- core/rules/thinking_os.md +48 -0
- core/rules/transparency-banner.md +37 -0
- core/runtime_paths.yaml +36 -0
- core/scaffold_manifest.json +14430 -0
- core/scheduled/__init__.py +0 -0
- core/scheduled/_activity.py +126 -0
- core/scheduled/_state.py +113 -0
- core/scheduled/config.py +86 -0
- core/scheduled/dep_reconcile.py +135 -0
- core/scheduled/error_sweep.py +137 -0
- core/scheduled/nightly.py +930 -0
- core/scheduled/responsive_extract.py +65 -0
- core/schemas/adapter.schema.json +269 -0
- core/schemas/preset.schema.json +50 -0
- core/schemas/skill.schema.json +81 -0
- core/schemas/stack.schema.json +404 -0
- core/scripts/_lib.sh +9 -0
- core/scripts/docs-lint.sh +228 -0
- core/scripts/docs-nav-fix.sh +133 -0
- core/scripts/docs-staleness-check.sh +154 -0
- core/scripts/install-adapter.sh +266 -0
- core/scripts/link-stack-skills.sh +52 -0
- core/scripts/log-latest.sh +106 -0
- core/scripts/log-search.sh +89 -0
- core/scripts/log-write.sh +134 -0
- core/scripts/ref-resolve.sh +71 -0
- core/skills/a11y/SKILL.md +305 -0
- core/skills/a11y/assets/a11y-checklist.md +137 -0
- core/skills/a11y/references/aria-and-focus.md +247 -0
- core/skills/a11y/references/rn-accessibility.md +343 -0
- core/skills/a11y/references/screen-reader-testing.md +190 -0
- core/skills/agent-memory/SKILL.md +191 -0
- core/skills/agent-memory/assets/memory-checklist.md +21 -0
- core/skills/agent-memory/references/memory-recipes.md +57 -0
- core/skills/api-design/SKILL.md +232 -0
- core/skills/api-design/assets/api-design-checklist.md +110 -0
- core/skills/api-design/references/error-envelope.md +381 -0
- core/skills/api-design/references/idempotency-pagination.md +312 -0
- core/skills/api-design/references/rest-contracts.md +426 -0
- core/skills/auth-patterns/SKILL.md +352 -0
- core/skills/auth-patterns/assets/auth-checklist.md +118 -0
- core/skills/auth-patterns/references/jwt-and-service-tokens.md +343 -0
- core/skills/auth-patterns/references/passkeys-2fa.md +289 -0
- core/skills/auth-patterns/references/sessions-vs-jwt.md +230 -0
- core/skills/auth-patterns/scripts/cookie-flag-check.py +146 -0
- core/skills/backend-fundamentals/SKILL.md +238 -0
- core/skills/backend-fundamentals/assets/backend-checklist.md +27 -0
- core/skills/backend-fundamentals/references/backend-patterns.md +56 -0
- core/skills/backend-fundamentals/scripts/check_layering.py +83 -0
- core/skills/clean-code/SKILL.md +642 -0
- core/skills/clean-code/scripts/audit-fail-closed.py +167 -0
- core/skills/codebase-explorer/SKILL.md +89 -0
- core/skills/codebase-explorer/assets/reading-checklist.md +24 -0
- core/skills/codebase-explorer/references/reading-strategies.md +52 -0
- core/skills/codebase-explorer/scripts/outline.py +99 -0
- core/skills/db-design/SKILL.md +327 -0
- core/skills/db-design/assets/migration-template.sql +49 -0
- core/skills/db-design/references/migration-discipline.md +290 -0
- core/skills/db-design/references/postgres-patterns.md +340 -0
- core/skills/db-design/scripts/migration-safety.sh +150 -0
- core/skills/deployment-cicd/SKILL.md +260 -0
- core/skills/deployment-cicd/assets/deploy-checklist.md +26 -0
- core/skills/deployment-cicd/references/pipeline-and-release.md +54 -0
- core/skills/deployment-cicd/scripts/lint_workflow.py +79 -0
- core/skills/docker/SKILL.md +114 -0
- core/skills/docker/assets/dockerfile-checklist.md +31 -0
- core/skills/docker/references/compose-patterns.md +66 -0
- core/skills/docker/references/dockerfile-optimization.md +64 -0
- core/skills/docker/scripts/lint_dockerfile.sh +48 -0
- core/skills/docker/versions.json +16 -0
- core/skills/end-to-end-testing/SKILL.md +101 -0
- core/skills/end-to-end-testing/assets/e2e-checklist.md +23 -0
- core/skills/end-to-end-testing/references/maestro.md +63 -0
- core/skills/end-to-end-testing/references/playwright.md +68 -0
- core/skills/end-to-end-testing/scripts/lint_e2e.py +88 -0
- core/skills/end-to-end-testing/versions.json +16 -0
- core/skills/frontend-design/SKILL.md +76 -0
- core/skills/frontend-design/assets/design-checklist.md +29 -0
- core/skills/frontend-design/references/design-principles.md +65 -0
- core/skills/frontend-design/scripts/check_contrast.py +89 -0
- core/skills/frontend-fundamentals/SKILL.md +213 -0
- core/skills/frontend-fundamentals/assets/frontend-checklist.md +25 -0
- core/skills/frontend-fundamentals/references/rendering-and-state.md +66 -0
- core/skills/frontend-fundamentals/scripts/check_frontend.py +86 -0
- core/skills/graph-explorer/SKILL.md +215 -0
- core/skills/graph-explorer/scripts/explain-impact.sh +64 -0
- core/skills/graphql/SKILL.md +187 -0
- core/skills/grpc-microservices/SKILL.md +174 -0
- core/skills/hexagonal-architecture/SKILL.md +199 -0
- core/skills/hexagonal-architecture/assets/folder-scaffold.md +233 -0
- core/skills/hexagonal-architecture/references/anti-patterns.md +129 -0
- core/skills/hexagonal-architecture/references/go-fiber-layout.md +429 -0
- core/skills/hexagonal-architecture/references/python-fastapi-layout.md +453 -0
- core/skills/hexagonal-architecture/references/react-native-layout.md +428 -0
- core/skills/i18n/SKILL.md +126 -0
- core/skills/incident-response/SKILL.md +225 -0
- core/skills/incident-response/assets/incident-checklist.md +29 -0
- core/skills/incident-response/references/severity-and-runbook.md +53 -0
- core/skills/incident-response/scripts/classify_severity.py +86 -0
- core/skills/linux-sysadmin/SKILL.md +115 -0
- core/skills/linux-sysadmin/assets/hardening-checklist.md +29 -0
- core/skills/linux-sysadmin/references/ssh-hardening.md +62 -0
- core/skills/linux-sysadmin/references/systemd-and-services.md +77 -0
- core/skills/linux-sysadmin/scripts/triage.sh +50 -0
- core/skills/linux-sysadmin/versions.json +17 -0
- core/skills/llm-patterns/SKILL.md +410 -0
- core/skills/llm-patterns/assets/llm-feature-checklist.md +26 -0
- core/skills/llm-patterns/references/rag-and-evals.md +59 -0
- core/skills/llm-patterns/scripts/estimate_tokens.py +75 -0
- core/skills/messaging-queues/SKILL.md +142 -0
- core/skills/mobile-fundamentals/SKILL.md +406 -0
- core/skills/mobile-fundamentals/assets/mobile-launch-checklist.md +130 -0
- core/skills/mobile-fundamentals/references/navigation-and-deep-links.md +337 -0
- core/skills/mobile-fundamentals/references/offline-sync.md +339 -0
- core/skills/node-backend/SKILL.md +114 -0
- core/skills/node-backend/assets/node-checklist.md +25 -0
- core/skills/node-backend/references/async-and-errors.md +67 -0
- core/skills/node-backend/references/event-loop.md +65 -0
- core/skills/node-backend/scripts/check_package.py +78 -0
- core/skills/node-backend/versions.json +17 -0
- core/skills/observability/SKILL.md +289 -0
- core/skills/observability/assets/observability-checklist.md +27 -0
- core/skills/observability/references/instrumentation.md +57 -0
- core/skills/observability/scripts/lint_logging.py +77 -0
- core/skills/payments/SKILL.md +102 -0
- core/skills/performance/SKILL.md +305 -0
- core/skills/performance/assets/perf-checklist.md +143 -0
- core/skills/performance/references/mobile-performance.md +249 -0
- core/skills/performance/references/web-vitals.md +209 -0
- core/skills/php/SKILL.md +116 -0
- core/skills/php/assets/php-checklist.md +26 -0
- core/skills/php/references/modern-php.md +64 -0
- core/skills/php/references/security.md +72 -0
- core/skills/php/scripts/scan_php_smells.py +99 -0
- core/skills/php/versions.json +9 -0
- core/skills/pr-mode-driver/SKILL.md +65 -0
- core/skills/realtime-websockets/SKILL.md +152 -0
- core/skills/redis/SKILL.md +105 -0
- core/skills/redis/assets/redis-checklist.md +27 -0
- core/skills/redis/references/operations.md +66 -0
- core/skills/redis/references/patterns.md +62 -0
- core/skills/redis/scripts/analyze_info.py +101 -0
- core/skills/redis/versions.json +9 -0
- core/skills/search/SKILL.md +91 -0
- core/skills/search/references/grep.md +76 -0
- core/skills/search/scripts/verify-count.sh +73 -0
- core/skills/search-infra/SKILL.md +109 -0
- core/skills/security-mobile/SKILL.md +394 -0
- core/skills/security-mobile/assets/mobile-security-checklist.md +117 -0
- core/skills/security-mobile/references/masvs-l1-checklist.md +127 -0
- core/skills/security-web/SKILL.md +217 -0
- core/skills/security-web/assets/security-web-checklist.md +167 -0
- core/skills/security-web/references/owasp-top-10.md +551 -0
- core/skills/security-web/references/supply-chain.md +179 -0
- core/skills/security-web/scripts/csp-check.sh +153 -0
- core/skills/shell-scripting/SKILL.md +128 -0
- core/skills/shell-scripting/assets/script-checklist.md +33 -0
- core/skills/shell-scripting/references/argument-parsing.md +84 -0
- core/skills/shell-scripting/references/bash-robustness.md +78 -0
- core/skills/shell-scripting/scripts/lint_script.sh +53 -0
- core/skills/shell-scripting/scripts/new_script.py +131 -0
- core/skills/shell-scripting/versions.json +23 -0
- core/skills/sql-authoring/SKILL.md +104 -0
- core/skills/sql-authoring/assets/query-review-checklist.md +26 -0
- core/skills/sql-authoring/references/query-patterns.md +89 -0
- core/skills/sql-authoring/references/reading-explain.md +52 -0
- core/skills/sql-authoring/scripts/analyze_plan.py +100 -0
- core/skills/sql-authoring/versions.json +17 -0
- core/skills/state-management/SKILL.md +428 -0
- core/skills/state-management/references/tanstack-query-recipes.md +301 -0
- core/skills/state-management/references/zustand-recipes.md +364 -0
- core/skills/supabase/SKILL.md +108 -0
- core/skills/supabase/assets/supabase-checklist.md +26 -0
- core/skills/supabase/references/realtime-and-storage.md +55 -0
- core/skills/supabase/references/rls-and-auth.md +65 -0
- core/skills/supabase/scripts/check_rls.py +88 -0
- core/skills/supabase/versions.json +9 -0
- core/skills/task-driver/SKILL.md +272 -0
- core/skills/task-driver/scripts/task-lint.sh +163 -0
- core/skills/technical-writing/SKILL.md +85 -0
- core/skills/technical-writing/assets/doc-checklist.md +29 -0
- core/skills/technical-writing/references/doc-anatomy.md +53 -0
- core/skills/technical-writing/references/writing-craft.md +59 -0
- core/skills/technical-writing/scripts/new_doc.py +81 -0
- core/skills/terraform-k8s/SKILL.md +133 -0
- core/skills/testing-strategy/SKILL.md +266 -0
- core/skills/testing-strategy/assets/test-review-checklist.md +25 -0
- core/skills/testing-strategy/references/test-types.md +52 -0
- core/skills/testing-strategy/scripts/coverage_gate.py +79 -0
- core/skills/thinking_os/SKILL.md +288 -0
- core/skills/thinking_os/scripts/classify.sh +122 -0
- core/skills/typescript/SKILL.md +110 -0
- core/skills/typescript/assets/typescript-checklist.md +24 -0
- core/skills/typescript/references/strictness.md +53 -0
- core/skills/typescript/references/type-system.md +86 -0
- core/skills/typescript/scripts/check_tsconfig.py +92 -0
- core/skills/typescript/versions.json +9 -0
- core/subsystems.yaml +202 -0
- core/thinking_os/__init__.py +1 -0
- core/thinking_os/_agent_markers.py +32 -0
- core/thinking_os/agents/README.md +71 -0
- core/thinking_os/agents/analyst.md +139 -0
- core/thinking_os/agents/architect.md +127 -0
- core/thinking_os/agents/debugger.md +111 -0
- core/thinking_os/agents/deployer.md +112 -0
- core/thinking_os/agents/distiller.md +28 -0
- core/thinking_os/agents/documenter.md +101 -0
- core/thinking_os/agents/implementer.md +135 -0
- core/thinking_os/agents/internal/session_observer.md +39 -0
- core/thinking_os/agents/observer.md +100 -0
- core/thinking_os/agents/onboarder.md +81 -0
- core/thinking_os/agents/refactorer.md +123 -0
- core/thinking_os/agents/repairer.md +47 -0
- core/thinking_os/agents/researcher.md +129 -0
- core/thinking_os/agents/reviewer.md +147 -0
- core/thinking_os/agents/security_auditor.md +133 -0
- core/thinking_os/background.py +405 -0
- core/thinking_os/bootstrap_outcomes.py +200 -0
- core/thinking_os/budget.py +302 -0
- core/thinking_os/capture.py +495 -0
- core/thinking_os/cognition.py +516 -0
- core/thinking_os/cognition_schemas.py +517 -0
- core/thinking_os/compress.py +192 -0
- core/thinking_os/concepts.py +233 -0
- core/thinking_os/dashboard.py +159 -0
- core/thinking_os/database.py +2883 -0
- core/thinking_os/decay.py +393 -0
- core/thinking_os/digest.py +295 -0
- core/thinking_os/dispatcher.py +192 -0
- core/thinking_os/dispatcher_helpers.py +48 -0
- core/thinking_os/dispatchers/__init__.py +3 -0
- core/thinking_os/dispatchers/default.py +47 -0
- core/thinking_os/distill.py +192 -0
- core/thinking_os/doc_indexer.py +905 -0
- core/thinking_os/embeddings.py +943 -0
- core/thinking_os/formula_composer.py +556 -0
- core/thinking_os/gate_marker.py +75 -0
- core/thinking_os/graph.py +296 -0
- core/thinking_os/graph_indexer.py +360 -0
- core/thinking_os/health_check.py +517 -0
- core/thinking_os/impact.py +119 -0
- core/thinking_os/memory_gc.py +356 -0
- core/thinking_os/migrator_embeddings.py +318 -0
- core/thinking_os/precision.py +194 -0
- core/thinking_os/presets/registry.yaml +127 -0
- core/thinking_os/record_outcome.py +399 -0
- core/thinking_os/repair.py +105 -0
- core/thinking_os/retrieval_quality.py +239 -0
- core/thinking_os/roles/analyst.yaml +83 -0
- core/thinking_os/roles/architect.yaml +88 -0
- core/thinking_os/roles/debugger.yaml +71 -0
- core/thinking_os/roles/deployer.yaml +71 -0
- core/thinking_os/roles/documenter.yaml +72 -0
- core/thinking_os/roles/implementer.yaml +83 -0
- core/thinking_os/roles/observer.yaml +70 -0
- core/thinking_os/roles/refactorer.yaml +71 -0
- core/thinking_os/roles/researcher.yaml +72 -0
- core/thinking_os/roles/reviewer.yaml +79 -0
- core/thinking_os/roles/security_auditor.yaml +83 -0
- core/thinking_os/roles_state.py +168 -0
- core/thinking_os/sanitizer.py +320 -0
- core/thinking_os/server.py +3160 -0
- core/thinking_os/session_enrich.py +272 -0
- core/thinking_os/session_observe_worker.py +111 -0
- core/thinking_os/session_startup.py +74 -0
- core/thinking_os/session_summary.py +245 -0
- core/thinking_os/situations/registry.yaml +99 -0
- core/thinking_os/task_analyzer.py +462 -0
- core/thinking_os/task_parser.py +342 -0
- core/thinking_os/task_sync.py +73 -0
- core/thinking_os/tools/__init__.py +6 -0
- core/thinking_os/tools/_shared.py +947 -0
- core/thinking_os/tools/cognition.py +1867 -0
- core/thinking_os/tools/docs.py +770 -0
- core/thinking_os/tools/learning.py +2078 -0
- core/thinking_os/tools/logs.py +79 -0
- core/thinking_os/tools/memory.py +840 -0
- core/thinking_os/tools/metrics.py +200 -0
- core/thinking_os/tools/retrieve.py +415 -0
- core/thinking_os/tools/routing.py +658 -0
- core/thinking_os/tools/tasks.py +449 -0
- core/thinking_os/tools/trajectory.py +181 -0
- core/thinking_os/tracing.py +235 -0
- core/web/__init__.py +5 -0
- core/web/_cache.py +118 -0
- core/web/_deps.py +56 -0
- core/web/_envelope.py +85 -0
- core/web/_project_context.py +140 -0
- core/web/chat_providers.py +108 -0
- core/web/init_jobs.py +216 -0
- core/web/routes/__init__.py +25 -0
- core/web/routes/_bounded_read.py +76 -0
- core/web/routes/board.py +1089 -0
- core/web/routes/cognition.py +1838 -0
- core/web/routes/config.py +635 -0
- core/web/routes/graph.py +513 -0
- core/web/routes/health.py +180 -0
- core/web/routes/hooks.py +288 -0
- core/web/routes/hub.py +1219 -0
- core/web/routes/logs.py +374 -0
- core/web/routes/metrics.py +43 -0
- core/web/routes/observability.py +400 -0
- core/web/routes/patterns.py +227 -0
- core/web/routes/presence.py +609 -0
- core/web/routes/roles.py +446 -0
- core/web/routes/scheduled.py +261 -0
- core/web/routes/search.py +238 -0
- core/web/routes/sessions.py +220 -0
- core/web/routes/settings.py +363 -0
- core/web/routes/stream.py +547 -0
- core/web/security.py +157 -0
- core/web/server.py +283 -0
- graph_os/__init__.py +29 -0
- graph_os/backend.py +233 -0
- graph_os/backends/__init__.py +13 -0
- graph_os/backends/sqlite_backend.py +1053 -0
- graph_os/communities.py +410 -0
- graph_os/enterprise.py +218 -0
- graph_os/entry_points.py +226 -0
- graph_os/extractors/__init__.py +25 -0
- graph_os/extractors/code_generic.py +914 -0
- graph_os/extractors/code_go.py +1422 -0
- graph_os/extractors/code_json.py +340 -0
- graph_os/extractors/code_php.py +979 -0
- graph_os/extractors/code_python.py +1454 -0
- graph_os/extractors/code_shell.py +538 -0
- graph_os/extractors/code_toml.py +302 -0
- graph_os/extractors/code_ts.py +1665 -0
- graph_os/extractors/code_yaml.py +394 -0
- graph_os/extractors/contracts.py +1592 -0
- graph_os/extractors/md_links.py +890 -0
- graph_os/extractors/task_deps.py +345 -0
- graph_os/groups/__init__.py +22 -0
- graph_os/groups/cross_repo.py +156 -0
- graph_os/groups/manifest.py +141 -0
- graph_os/ingest/__init__.py +19 -0
- graph_os/ingest/base.py +306 -0
- graph_os/ingest/github.py +112 -0
- graph_os/ingest/zip.py +95 -0
- graph_os/toolchain.py +393 -0
- graph_os/tools/__init__.py +9 -0
- graph_os/tools/graph.py +5573 -0
- graph_os/tools/reindex_dispatch.py +730 -0
- graph_os/tree_sitter_overlay.py +235 -0
- graph_os/types.py +252 -0
- graph_os/vec_index.py +277 -0
- graph_os/viewer/__init__.py +12 -0
- graph_os/viewer/exporter.py +93 -0
- graph_os/viewer/template.py +189 -0
- scheduled/__init__.py +0 -0
- scheduled/_activity.py +126 -0
- scheduled/_state.py +113 -0
- scheduled/config.py +86 -0
- scheduled/dep_reconcile.py +135 -0
- scheduled/error_sweep.py +137 -0
- scheduled/nightly.py +930 -0
- scheduled/responsive_extract.py +65 -0
- scripts/__init__.py +4 -0
- scripts/_commit_msg_body.sh +31 -0
- scripts/_post_commit_body.sh +49 -0
- scripts/_pre_commit_body.sh +121 -0
- scripts/_prepare_commit_msg_body.sh +53 -0
- scripts/audit_mcp_tools.py +693 -0
- scripts/bench_sdk_dispatcher.py +177 -0
- scripts/capture_golden.py +169 -0
- scripts/check_graph_phantoms.py +75 -0
- scripts/dev/audit_doc_links.py +359 -0
- scripts/dev/audit_scaffold_module_tags.py +107 -0
- scripts/dev/backfill_doc_headers.py +328 -0
- scripts/dev/backfill_nav_lines.py +119 -0
- scripts/dev/fix_nav_placement.py +106 -0
- scripts/dev/inspect_sdk_options.py +45 -0
- scripts/dev/migrate_check_ids.py +170 -0
- scripts/dev/strip_purpose_blocks.py +154 -0
- scripts/dump_openapi.py +66 -0
- scripts/e2e_dispatch_tool.py +195 -0
- scripts/generate_manifest.py +166 -0
- scripts/golden_sections.py +20 -0
- scripts/graph_demo.py +161 -0
- scripts/install-git-hooks.sh +47 -0
- scripts/migrate_embeddings_minilm_to_bge_m3.py +84 -0
- scripts/operational_eval.py +445 -0
- scripts/probe_agent_session_resolver.py +59 -0
- scripts/prune_deleted_path.py +127 -0
- scripts/refactor_agent_dual_mode.py +171 -0
- scripts/refresh_skill_versions.py +302 -0
- scripts/regen_doc_index.py +209 -0
- scripts/regen_doctor_schema.py +62 -0
- scripts/regen_rules.py +94 -0
- scripts/rename_formulas_to_semantic.py +241 -0
- scripts/smoke_db_connections.py +183 -0
- scripts/smoke_doc_header.py +72 -0
- scripts/smoke_graph_e2e.py +374 -0
- scripts/smoke_sdk_dispatch.py +84 -0
- scripts/smoke_uid_resolver.py +164 -0
- scripts/verify_dispatchers.py +244 -0
- scripts/verify_phase_c_e2e.py +436 -0
- templates/__init__.py +6 -0
- templates/_base/Makefile.base +353 -0
- templates/_base/base.yaml +59 -0
- templates/_base/coding-os.yaml.template +39 -0
- templates/_base/dimension-registry.template.md +68 -0
- templates/_base/domain-config.template.json +46 -0
- templates/_base/fragments/anatomy-map.md.tmpl +11 -0
- templates/_base/fragments/context-discipline.md.tmpl +3 -0
- templates/_base/fragments/core-loop.md.tmpl +52 -0
- templates/_base/fragments/engineering-routing.md.tmpl +3 -0
- templates/_base/fragments/header.md.tmpl +6 -0
- templates/_base/fragments/identity.md.tmpl +3 -0
- templates/_base/fragments/principles.md.tmpl +3 -0
- templates/_base/fragments/retrieval-routing.md.tmpl +23 -0
- templates/_base/fragments/session-handoff.md.tmpl +3 -0
- templates/_base/fragments/skills.md.tmpl +3 -0
- templates/_base/fragments/ssot-map.md.tmpl +3 -0
- templates/_base/fragments/stop-conditions.md.tmpl +3 -0
- templates/_base/fragments/subagent-dispatch.md.tmpl +3 -0
- templates/_base/fragments/task-authoring.md.tmpl +69 -0
- templates/_base/fragments/task-logging.md.tmpl +8 -0
- templates/_base/fragments/tool-routing.md.tmpl +9 -0
- templates/_base/fragments/verification-matrix.md.tmpl +12 -0
- templates/_base/lang/dart/analysis_options.yaml +7 -0
- templates/_base/lang/php/phpcs.xml.dist +10 -0
- templates/_base/lang/python/pyproject.toml +19 -0
- templates/_base/lang/rust/clippy.toml +5 -0
- templates/_base/lang/rust/rustfmt.toml +3 -0
- templates/_base/lang/typescript/eslint.config.js +26 -0
- templates/_base/lang/typescript/tsconfig.json +15 -0
- templates/_base/lang/typescript/vitest.config.ts +10 -0
- templates/_base/scaffold/changes.log +1 -0
- templates/_base/scaffold/docs/00-index.md +55 -0
- templates/_base/scaffold/docs/_meta/feature-dependency-tree.md +30 -0
- templates/_base/scaffold/docs/_meta/foundation-map.md +56 -0
- templates/_base/scaffold/docs/_meta/questions.md +8 -0
- templates/_base/scaffold/docs/_meta/roadmap.md +33 -0
- templates/_base/scaffold/docs/api-contracts/00-index.md +58 -0
- templates/_base/scaffold/docs/api-contracts/error-format.md +58 -0
- templates/_base/scaffold/docs/architecture/00-index.md +42 -0
- templates/_base/scaffold/docs/architecture/adr/00-index.md +39 -0
- templates/_base/scaffold/docs/engineering/00-index.md +9 -0
- templates/_base/scaffold/docs/governance/00-index.md +55 -0
- templates/_base/scaffold/docs/governance/_templates/doc-cheat-sheet.md +202 -0
- templates/_base/scaffold/docs/governance/_templates/playbook-template.md +81 -0
- templates/_base/scaffold/docs/governance/_templates/post-mortem-template.md +85 -0
- templates/_base/scaffold/docs/governance/_templates/runbook-template.md +88 -0
- templates/_base/scaffold/docs/governance/_templates/security-review-template.md +111 -0
- templates/_base/scaffold/docs/governance/_templates/task-detail.md +61 -0
- templates/_base/scaffold/docs/governance/agent-workflow.md +101 -0
- templates/_base/scaffold/docs/governance/anatomy-contract.md +150 -0
- templates/_base/scaffold/docs/governance/critical-rules.md +224 -0
- templates/_base/scaffold/docs/governance/decision-records.md +58 -0
- templates/_base/scaffold/docs/governance/docs-first-protocol.md +157 -0
- templates/_base/scaffold/docs/governance/docs-system.md +151 -0
- templates/_base/scaffold/docs/governance/gdpr-compliance.md +66 -0
- templates/_base/scaffold/docs/governance/mcp-tool-inventory.md +112 -0
- templates/_base/scaffold/docs/governance/risk-register.md +26 -0
- templates/_base/scaffold/docs/governance/scaffold-boundary-contract.md +161 -0
- templates/_base/scaffold/docs/governance/task-lifecycle.md +125 -0
- templates/_base/scaffold/docs/governance/wrapper-derivation.md +50 -0
- templates/_base/scaffold/docs/insights/00-index.md +17 -0
- templates/_base/scaffold/docs/ops/00-index.md +59 -0
- templates/_base/scaffold/docs/ops/runbooks/00-index.md +9 -0
- templates/_base/scaffold/docs/playbooks/00-index.md +12 -0
- templates/_base/scaffold/docs/playbooks/research-validation.md +29 -0
- templates/_base/scaffold/docs/playbooks/security-review.md +41 -0
- templates/_base/scaffold/docs/prd/00-index.md +43 -0
- templates/_base/scaffold/docs/prd/01-snapshot-vision.md +56 -0
- templates/_base/scaffold/docs/workflow/workflow-guide.md +138 -0
- templates/_base/scaffold/src/shared/README.md +23 -0
- templates/_base/skill-enforcement.template.md +14 -0
- templates/_base/task-detail.template.md +61 -0
- templates/_presets/ai-saas.yaml +9 -0
- templates/_presets/django-next.yaml +8 -0
- templates/_presets/dotnet-react.yaml +8 -0
- templates/_presets/flutter-baas.yaml +8 -0
- templates/_presets/go-react.yaml +8 -0
- templates/_presets/hexagonal-product.yaml +16 -0
- templates/_presets/jamstack.yaml +8 -0
- templates/_presets/laravel-vue.yaml +8 -0
- templates/_presets/mean.yaml +8 -0
- templates/_presets/mern.yaml +9 -0
- templates/_presets/nest-angular.yaml +8 -0
- templates/_presets/nextjs-fastapi.yaml +10 -0
- templates/_presets/nuxt-fullstack.yaml +9 -0
- templates/_presets/pern.yaml +9 -0
- templates/_presets/rails-react.yaml +8 -0
- templates/_presets/rn-api.yaml +8 -0
- templates/_presets/rust-svelte.yaml +8 -0
- templates/_presets/spring-react.yaml +8 -0
- templates/_presets/t3-style.yaml +9 -0
- templates/_presets/tall.yaml +8 -0
- templates/_presets/wordpress-cms.yaml +8 -0
- templates/angular/rules/frontend.md +19 -0
- templates/angular/scaffold/docs/engineering/accessibility.md +46 -0
- templates/angular/scaffold/docs/engineering/angular-rules.md +35 -0
- templates/angular/scaffold/docs/playbooks/angular-app.md +42 -0
- templates/angular/scaffold/src/frontend/angular.json +52 -0
- templates/angular/scaffold/src/frontend/package.json +28 -0
- templates/angular/scaffold/src/frontend/src/app/app.component.ts +19 -0
- templates/angular/scaffold/src/frontend/src/app/app.config.ts +22 -0
- templates/angular/scaffold/src/frontend/src/app/app.routes.ts +8 -0
- templates/angular/scaffold/src/frontend/src/app/core/global-error-handler.ts +12 -0
- templates/angular/scaffold/src/frontend/src/app/health/health.component.ts +14 -0
- templates/angular/scaffold/src/frontend/src/app/health/health.service.spec.ts +16 -0
- templates/angular/scaffold/src/frontend/src/app/health/health.service.ts +10 -0
- templates/angular/scaffold/src/frontend/src/index.html +11 -0
- templates/angular/scaffold/src/frontend/src/main.ts +9 -0
- templates/angular/scaffold/src/frontend/src/styles.css +14 -0
- templates/angular/scaffold/src/frontend/tsconfig.app.json +8 -0
- templates/angular/scaffold/src/frontend/tsconfig.json +27 -0
- templates/angular/scaffold/src/frontend/tsconfig.spec.json +8 -0
- templates/angular/scaffold-boundary.yaml +27 -0
- templates/angular/skills/angular/SKILL.md +79 -0
- templates/angular/skills/angular/references/anatomy.md +69 -0
- templates/angular/stack.yaml +75 -0
- templates/aspnet-core/rules/backend.md +20 -0
- templates/aspnet-core/scaffold/docs/engineering/aspnet-core-rules.md +36 -0
- templates/aspnet-core/scaffold/docs/playbooks/aspnet-core-service.md +40 -0
- templates/aspnet-core/scaffold/src/backend/Backend.csproj +11 -0
- templates/aspnet-core/scaffold/src/backend/Backend.sln +27 -0
- templates/aspnet-core/scaffold/src/backend/Common/ExceptionHandlingMiddleware.cs +35 -0
- templates/aspnet-core/scaffold/src/backend/Features/Health/HealthEndpoints.cs +10 -0
- templates/aspnet-core/scaffold/src/backend/Features/Health/HealthService.cs +9 -0
- templates/aspnet-core/scaffold/src/backend/Program.cs +22 -0
- templates/aspnet-core/scaffold/src/backend/tests/Backend.Tests/Backend.Tests.csproj +22 -0
- templates/aspnet-core/scaffold/src/backend/tests/Backend.Tests/HealthServiceTests.cs +15 -0
- templates/aspnet-core/scaffold-boundary.yaml +24 -0
- templates/aspnet-core/skills/aspnet-core/SKILL.md +80 -0
- templates/aspnet-core/skills/aspnet-core/references/anatomy.md +65 -0
- templates/aspnet-core/stack.yaml +68 -0
- templates/astro/rules/frontend.md +20 -0
- templates/astro/scaffold/docs/engineering/astro-rules.md +40 -0
- templates/astro/scaffold/docs/playbooks/astro-app.md +57 -0
- templates/astro/scaffold/docs/playbooks/content-seo.md +37 -0
- templates/astro/scaffold/src/frontend/astro.config.mjs +10 -0
- templates/astro/scaffold/src/frontend/package.json +23 -0
- templates/astro/scaffold/src/frontend/src/components/Greeting.astro +13 -0
- templates/astro/scaffold/src/frontend/src/content/posts/hello.md +10 -0
- templates/astro/scaffold/src/frontend/src/content.config.ts +19 -0
- templates/astro/scaffold/src/frontend/src/lib/problem.test.ts +39 -0
- templates/astro/scaffold/src/frontend/src/lib/problem.ts +30 -0
- templates/astro/scaffold/src/frontend/src/pages/api/health.ts +13 -0
- templates/astro/scaffold/src/frontend/src/pages/index.astro +21 -0
- templates/astro/scaffold/src/frontend/tsconfig.json +9 -0
- templates/astro/scaffold/src/frontend/vitest.config.ts +10 -0
- templates/astro/scaffold-boundary.yaml +28 -0
- templates/astro/skills/astro/SKILL.md +71 -0
- templates/astro/skills/astro/references/anatomy.md +66 -0
- templates/astro/stack.yaml +75 -0
- templates/csharp-plain/scaffold/src/backend/Backend.csproj +12 -0
- templates/csharp-plain/scaffold/src/backend/Program.cs +1 -0
- templates/csharp-plain/scaffold-boundary.yaml +23 -0
- templates/csharp-plain/stack.yaml +50 -0
- templates/django/rules/backend.md +18 -0
- templates/django/scaffold/docs/engineering/anti-ambiguity.md +74 -0
- templates/django/scaffold/docs/engineering/backend-rules.md +133 -0
- templates/django/scaffold/docs/engineering/glossary.md +51 -0
- templates/django/scaffold/docs/engineering/logging-standards.md +107 -0
- templates/django/scaffold/docs/engineering/naming-conventions.md +68 -0
- templates/django/scaffold/docs/engineering/secrets-rotation-runbook.md +142 -0
- templates/django/scaffold/docs/playbooks/backend-api.md +119 -0
- templates/django/scaffold/src/backend/config/__init__.py +0 -0
- templates/django/scaffold/src/backend/config/settings.py +31 -0
- templates/django/scaffold/src/backend/config/urls.py +11 -0
- templates/django/scaffold/src/backend/config/wsgi.py +6 -0
- templates/django/scaffold/src/backend/manage.py +14 -0
- templates/django/scaffold/src/backend/pyproject.toml +37 -0
- templates/django/scaffold/src/backend/tests/test_health.py +4 -0
- templates/django/scaffold-boundary.yaml +25 -0
- templates/django/skills/python-django/SKILL.md +450 -0
- templates/django/skills/python-django/references/anatomy.md +117 -0
- templates/django/skills/python-django/scripts/new_endpoint.py +89 -0
- templates/django/stack.yaml +73 -0
- templates/fastapi/rules/backend.md +18 -0
- templates/fastapi/scaffold/docs/engineering/fastapi-rules.md +37 -0
- templates/fastapi/scaffold/docs/playbooks/fastapi-service.md +30 -0
- templates/fastapi/scaffold/src/backend/app/__init__.py +0 -0
- templates/fastapi/scaffold/src/backend/app/main.py +8 -0
- templates/fastapi/scaffold/src/backend/pyproject.toml +39 -0
- templates/fastapi/scaffold/src/backend/tests/test_health.py +11 -0
- templates/fastapi/scaffold-boundary.yaml +25 -0
- templates/fastapi/skills/python-fastapi/SKILL.md +75 -0
- templates/fastapi/skills/python-fastapi/references/anatomy.md +117 -0
- templates/fastapi/skills/python-fastapi/scripts/new_endpoint.py +101 -0
- templates/fastapi/stack.yaml +57 -0
- templates/flutter/rules/mobile.md +26 -0
- templates/flutter/scaffold/docs/engineering/flutter-rules.md +35 -0
- templates/flutter/scaffold/docs/playbooks/flutter-app.md +45 -0
- templates/flutter/scaffold/src/mobile/lib/core/error_mapper.dart +17 -0
- templates/flutter/scaffold/src/mobile/lib/core/router.dart +13 -0
- templates/flutter/scaffold/src/mobile/lib/main.dart +22 -0
- templates/flutter/scaffold/src/mobile/lib/screens/health_screen.dart +32 -0
- templates/flutter/scaffold/src/mobile/lib/services/health_service.dart +11 -0
- templates/flutter/scaffold/src/mobile/lib/state/health_provider.dart +13 -0
- templates/flutter/scaffold/src/mobile/pubspec.yaml +22 -0
- templates/flutter/scaffold/src/mobile/test/health_provider_test.dart +90 -0
- templates/flutter/scaffold-boundary.yaml +28 -0
- templates/flutter/skills/flutter/SKILL.md +76 -0
- templates/flutter/skills/flutter/references/anatomy.md +64 -0
- templates/flutter/stack.yaml +70 -0
- templates/go/rules/backend.md +19 -0
- templates/go/scaffold/docs/engineering/go-rules.md +45 -0
- templates/go/scaffold/docs/playbooks/go-service.md +30 -0
- templates/go/scaffold/src/backend/cmd/api/main.go +22 -0
- templates/go/scaffold/src/backend/cmd/api/main_test.go +20 -0
- templates/go/scaffold/src/backend/go.mod +3 -0
- templates/go/scaffold-boundary.yaml +25 -0
- templates/go/skills/go-patterns/SKILL.md +68 -0
- templates/go/skills/go-patterns/assets/go-checklist.md +29 -0
- templates/go/skills/go-patterns/references/anatomy.md +115 -0
- templates/go/skills/go-patterns/references/go-2026-idioms.md +92 -0
- templates/go/skills/go-patterns/scripts/new_endpoint.py +117 -0
- templates/go/skills/go-patterns/versions.json +16 -0
- templates/go/stack.yaml +54 -0
- templates/go-fiber/rules/backend.md +20 -0
- templates/go-fiber/scaffold/docs/engineering/fiber-rules.md +97 -0
- templates/go-fiber/scaffold/docs/playbooks/fiber-service.md +149 -0
- templates/go-fiber/scaffold/src/backend/cmd/api/main.go +21 -0
- templates/go-fiber/scaffold/src/backend/cmd/api/main_test.go +17 -0
- templates/go-fiber/scaffold/src/backend/go.mod +23 -0
- templates/go-fiber/scaffold/src/backend/go.sum +49 -0
- templates/go-fiber/scaffold-boundary.yaml +26 -0
- templates/go-fiber/skills/go-fiber/SKILL.md +203 -0
- templates/go-fiber/skills/go-fiber/assets/fiber-checklist.md +26 -0
- templates/go-fiber/skills/go-fiber/references/anatomy.md +116 -0
- templates/go-fiber/skills/go-fiber/references/fiber-v3-patterns.md +89 -0
- templates/go-fiber/skills/go-fiber/scripts/new_endpoint.py +107 -0
- templates/go-fiber/skills/go-fiber/versions.json +16 -0
- templates/go-fiber/stack.yaml +59 -0
- templates/go-plain/scaffold/src/backend/go.mod +3 -0
- templates/go-plain/scaffold/src/backend/main.go +7 -0
- templates/go-plain/scaffold-boundary.yaml +22 -0
- templates/go-plain/stack.yaml +51 -0
- templates/java-plain/scaffold/src/backend/mvnw +302 -0
- templates/java-plain/scaffold/src/backend/pom.xml +41 -0
- templates/java-plain/scaffold/src/backend/src/main/java/com/example/app/Main.java +10 -0
- templates/java-plain/scaffold-boundary.yaml +23 -0
- templates/java-plain/stack.yaml +51 -0
- templates/laravel/rules/backend.md +20 -0
- templates/laravel/scaffold/docs/engineering/laravel-rules.md +28 -0
- templates/laravel/scaffold/docs/playbooks/laravel-service.md +28 -0
- templates/laravel/scaffold/src/backend/app/Exceptions/Handler.php +27 -0
- templates/laravel/scaffold/src/backend/app/Http/Controllers/HealthController.php +15 -0
- templates/laravel/scaffold/src/backend/app/Support/HealthStatus.php +14 -0
- templates/laravel/scaffold/src/backend/composer.json +24 -0
- templates/laravel/scaffold/src/backend/phpunit.xml +10 -0
- templates/laravel/scaffold/src/backend/public/index.php +8 -0
- templates/laravel/scaffold/src/backend/routes/api.php +7 -0
- templates/laravel/scaffold/src/backend/tests/Unit/HealthStatusTest.php +16 -0
- templates/laravel/scaffold-boundary.yaml +23 -0
- templates/laravel/skills/laravel/SKILL.md +56 -0
- templates/laravel/skills/laravel/references/anatomy.md +65 -0
- templates/laravel/stack.yaml +66 -0
- templates/meta/rules/graph-first.md +27 -0
- templates/meta/rules/hook-author.md +19 -0
- templates/meta/rules/mcp-tool-author.md +18 -0
- templates/meta/rules/meta-engineering.md +17 -0
- templates/meta/scaffold-boundary.yaml +55 -0
- templates/meta/skills/claude-sdk-integration/SKILL.md +163 -0
- templates/meta/skills/claude-sdk-integration/assets/sdk-checklist.md +27 -0
- templates/meta/skills/claude-sdk-integration/scripts/check_model_ids.py +97 -0
- templates/meta/skills/graph-os-authoring/SKILL.md +278 -0
- templates/meta/skills/graph-os-authoring/assets/graph-os-checklist.md +25 -0
- templates/meta/skills/graph-os-authoring/scripts/new_extractor.py +76 -0
- templates/meta/skills/hook-authoring/SKILL.md +292 -0
- templates/meta/skills/hook-authoring/assets/hook-checklist.md +30 -0
- templates/meta/skills/hook-authoring/scripts/new_hook.sh +75 -0
- templates/meta/skills/mcp-tool-authoring/SKILL.md +301 -0
- templates/meta/skills/mcp-tool-authoring/assets/mcp-tool-checklist.md +29 -0
- templates/meta/skills/mcp-tool-authoring/scripts/new_tool.py +74 -0
- templates/meta/skills/meta-engineering/SKILL.md +151 -0
- templates/meta/skills/meta-engineering/assets/meta-edit-checklist.md +28 -0
- templates/meta/skills/meta-engineering/scripts/which_layer.py +61 -0
- templates/meta/skills/python-meta-server/SKILL.md +162 -0
- templates/meta/skills/python-meta-server/assets/meta-server-checklist.md +28 -0
- templates/meta/skills/python-meta-server/scripts/check_envelope.py +91 -0
- templates/meta/skills/react-vite-hub/SKILL.md +140 -0
- templates/meta/skills/react-vite-hub/assets/hub-ui-checklist.md +23 -0
- templates/meta/skills/react-vite-hub/scripts/check_vite_env.py +73 -0
- templates/meta/stack.yaml +119 -0
- templates/nestjs/rules/backend.md +20 -0
- templates/nestjs/scaffold/docs/engineering/nestjs-rules.md +33 -0
- templates/nestjs/scaffold/docs/playbooks/nestjs-service.md +39 -0
- templates/nestjs/scaffold/src/backend/nest-cli.json +5 -0
- templates/nestjs/scaffold/src/backend/package.json +28 -0
- templates/nestjs/scaffold/src/backend/src/app.module.ts +9 -0
- templates/nestjs/scaffold/src/backend/src/common/all-exceptions.filter.ts +59 -0
- templates/nestjs/scaffold/src/backend/src/health/health.controller.ts +14 -0
- templates/nestjs/scaffold/src/backend/src/health/health.module.ts +10 -0
- templates/nestjs/scaffold/src/backend/src/health/health.service.spec.ts +21 -0
- templates/nestjs/scaffold/src/backend/src/health/health.service.ts +9 -0
- templates/nestjs/scaffold/src/backend/src/main.ts +26 -0
- templates/nestjs/scaffold/src/backend/tsconfig.json +16 -0
- templates/nestjs/scaffold/src/backend/vitest.config.ts +9 -0
- templates/nestjs/scaffold-boundary.yaml +25 -0
- templates/nestjs/skills/nestjs/SKILL.md +67 -0
- templates/nestjs/skills/nestjs/references/anatomy.md +65 -0
- templates/nestjs/stack.yaml +68 -0
- templates/nextjs/rules/frontend.md +18 -0
- templates/nextjs/scaffold/docs/design/00-index.md +23 -0
- templates/nextjs/scaffold/docs/design/colors-tokens.md +141 -0
- templates/nextjs/scaffold/docs/design/components-patterns.md +159 -0
- templates/nextjs/scaffold/docs/design/motion-accessibility.md +137 -0
- templates/nextjs/scaffold/docs/design/typography-spacing.md +107 -0
- templates/nextjs/scaffold/docs/engineering/accessibility-web.md +56 -0
- templates/nextjs/scaffold/docs/engineering/copywriting-standard.md +102 -0
- templates/nextjs/scaffold/docs/engineering/formatting-rules.md +89 -0
- templates/nextjs/scaffold/docs/engineering/frontend-rendering-rules.md +80 -0
- templates/nextjs/scaffold/docs/engineering/frontend-rules.md +183 -0
- templates/nextjs/scaffold/docs/engineering/i18n-policy.md +99 -0
- templates/nextjs/scaffold/docs/pages-content-spec/00-index.md +78 -0
- templates/nextjs/scaffold/docs/playbooks/content-seo.md +55 -0
- templates/nextjs/scaffold/docs/playbooks/docs-governance.md +51 -0
- templates/nextjs/scaffold/docs/playbooks/frontend-ui.md +63 -0
- templates/nextjs/scaffold/src/frontend/app/layout.tsx +14 -0
- templates/nextjs/scaffold/src/frontend/app/page.tsx +3 -0
- templates/nextjs/scaffold/src/frontend/eslint.config.js +17 -0
- templates/nextjs/scaffold/src/frontend/lib/greeting.test.ts +9 -0
- templates/nextjs/scaffold/src/frontend/lib/greeting.ts +3 -0
- templates/nextjs/scaffold/src/frontend/package.json +28 -0
- templates/nextjs/scaffold/src/frontend/tsconfig.json +18 -0
- templates/nextjs/scaffold/src/frontend/vitest.config.ts +10 -0
- templates/nextjs/scaffold-boundary.yaml +30 -0
- templates/nextjs/skills/nextjs-react/SKILL.md +485 -0
- templates/nextjs/skills/nextjs-react/references/anatomy.md +116 -0
- templates/nextjs/skills/nextjs-react/scripts/new_component.py +72 -0
- templates/nextjs/stack.yaml +81 -0
- templates/node-express/rules/backend.md +20 -0
- templates/node-express/scaffold/docs/engineering/express-rules.md +30 -0
- templates/node-express/scaffold/docs/playbooks/express-service.md +35 -0
- templates/node-express/scaffold/src/backend/package.json +24 -0
- templates/node-express/scaffold/src/backend/src/index.ts +17 -0
- templates/node-express/scaffold/src/backend/src/middleware/error-handler.ts +12 -0
- templates/node-express/scaffold/src/backend/src/routes/health.test.ts +33 -0
- templates/node-express/scaffold/src/backend/src/routes/health.ts +7 -0
- templates/node-express/scaffold/src/backend/tsconfig.json +15 -0
- templates/node-express/scaffold/src/backend/types/express-bootstrap.d.ts +21 -0
- templates/node-express/scaffold-boundary.yaml +25 -0
- templates/node-express/skills/node-express/SKILL.md +70 -0
- templates/node-express/skills/node-express/references/anatomy.md +63 -0
- templates/node-express/stack.yaml +63 -0
- templates/python/scaffold/docs/engineering/python-rules.md +27 -0
- templates/python/scaffold/docs/playbooks/python-library.md +35 -0
- templates/python/stack.yaml +60 -0
- templates/rails/rules/backend.md +10 -0
- templates/rails/scaffold/docs/engineering/rails-rules.md +33 -0
- templates/rails/scaffold/docs/playbooks/rails-service.md +42 -0
- templates/rails/scaffold/src/backend/Gemfile +12 -0
- templates/rails/scaffold/src/backend/app/controllers/application_controller.rb +26 -0
- templates/rails/scaffold/src/backend/app/controllers/health_controller.rb +6 -0
- templates/rails/scaffold/src/backend/app/models/health.rb +6 -0
- templates/rails/scaffold/src/backend/config/application.rb +12 -0
- templates/rails/scaffold/src/backend/config/boot.rb +3 -0
- templates/rails/scaffold/src/backend/config/routes.rb +4 -0
- templates/rails/scaffold/src/backend/config.ru +5 -0
- templates/rails/scaffold/src/backend/spec/rails_helper.rb +18 -0
- templates/rails/scaffold/src/backend/spec/requests/health_spec.rb +24 -0
- templates/rails/scaffold-boundary.yaml +25 -0
- templates/rails/skills/rails/SKILL.md +62 -0
- templates/rails/skills/rails/references/anatomy.md +71 -0
- templates/rails/stack.yaml +72 -0
- templates/react-native/rules/mobile.md +26 -0
- templates/react-native/scaffold/docs/engineering/accessibility-mobile.md +95 -0
- templates/react-native/scaffold/docs/engineering/mobile-rules.md +56 -0
- templates/react-native/scaffold/docs/engineering/offline-first.md +61 -0
- templates/react-native/scaffold/docs/playbooks/mobile-app.md +49 -0
- templates/react-native/scaffold/src/mobile/App.tsx +9 -0
- templates/react-native/scaffold/src/mobile/eslint.config.js +17 -0
- templates/react-native/scaffold/src/mobile/package.json +23 -0
- templates/react-native/scaffold/src/mobile/src/greeting.test.ts +9 -0
- templates/react-native/scaffold/src/mobile/src/greeting.ts +3 -0
- templates/react-native/scaffold/src/mobile/tsconfig.json +17 -0
- templates/react-native/scaffold/src/mobile/vitest.config.ts +10 -0
- templates/react-native/scaffold-boundary.yaml +30 -0
- templates/react-native/skills/react-native-mobile/SKILL.md +119 -0
- templates/react-native/skills/react-native-mobile/assets/rn-mobile-checklist.md +28 -0
- templates/react-native/skills/react-native-mobile/references/anatomy.md +140 -0
- templates/react-native/skills/react-native-mobile/references/rn-2026-practices.md +54 -0
- templates/react-native/skills/react-native-mobile/scripts/new_screen.py +73 -0
- templates/react-native/skills/react-native-mobile/versions.json +16 -0
- templates/react-native/skills/react-native-patterns/SKILL.md +512 -0
- templates/react-native/skills/react-native-patterns/assets/rn-review-checklist.md +26 -0
- templates/react-native/skills/react-native-patterns/references/anatomy.md +62 -0
- templates/react-native/skills/react-native-patterns/references/list-performance.md +70 -0
- templates/react-native/skills/react-native-patterns/scripts/scan_rn_perf.py +77 -0
- templates/react-native/stack.yaml +70 -0
- templates/ruby-plain/scaffold/src/backend/Gemfile +8 -0
- templates/ruby-plain/scaffold/src/backend/main.rb +3 -0
- templates/ruby-plain/scaffold-boundary.yaml +23 -0
- templates/ruby-plain/stack.yaml +50 -0
- templates/rust-axum/rules/backend.md +20 -0
- templates/rust-axum/scaffold/docs/engineering/rust-axum-rules.md +35 -0
- templates/rust-axum/scaffold/docs/playbooks/rust-axum-service.md +43 -0
- templates/rust-axum/scaffold/src/backend/Cargo.toml +20 -0
- templates/rust-axum/scaffold/src/backend/src/app.rs +12 -0
- templates/rust-axum/scaffold/src/backend/src/error.rs +48 -0
- templates/rust-axum/scaffold/src/backend/src/main.rs +24 -0
- templates/rust-axum/scaffold/src/backend/src/routes/health.rs +37 -0
- templates/rust-axum/scaffold/src/backend/src/routes/mod.rs +2 -0
- templates/rust-axum/scaffold-boundary.yaml +25 -0
- templates/rust-axum/skills/rust/SKILL.md +73 -0
- templates/rust-axum/skills/rust/references/anatomy.md +63 -0
- templates/rust-axum/stack.yaml +65 -0
- templates/rust-plain/scaffold/src/backend/Cargo.toml +6 -0
- templates/rust-plain/scaffold/src/backend/src/main.rs +3 -0
- templates/rust-plain/scaffold-boundary.yaml +23 -0
- templates/rust-plain/stack.yaml +51 -0
- templates/spring-boot/rules/backend.md +20 -0
- templates/spring-boot/scaffold/docs/engineering/spring-boot-rules.md +35 -0
- templates/spring-boot/scaffold/docs/playbooks/spring-boot-service.md +45 -0
- templates/spring-boot/scaffold/src/backend/mvnw +302 -0
- templates/spring-boot/scaffold/src/backend/pom.xml +69 -0
- templates/spring-boot/scaffold/src/backend/src/main/java/com/example/app/Application.java +16 -0
- templates/spring-boot/scaffold/src/backend/src/main/java/com/example/app/common/GlobalExceptionHandler.java +31 -0
- templates/spring-boot/scaffold/src/backend/src/main/java/com/example/app/health/HealthController.java +22 -0
- templates/spring-boot/scaffold/src/backend/src/main/java/com/example/app/health/HealthService.java +12 -0
- templates/spring-boot/scaffold/src/backend/src/main/java/com/example/app/health/HealthStatus.java +4 -0
- templates/spring-boot/scaffold/src/backend/src/test/java/com/example/app/health/HealthServiceTest.java +15 -0
- templates/spring-boot/scaffold-boundary.yaml +26 -0
- templates/spring-boot/skills/spring-boot/SKILL.md +84 -0
- templates/spring-boot/skills/spring-boot/references/anatomy.md +63 -0
- templates/spring-boot/stack.yaml +65 -0
- templates/svelte-sveltekit/rules/frontend.md +20 -0
- templates/svelte-sveltekit/scaffold/docs/engineering/svelte-sveltekit-rules.md +37 -0
- templates/svelte-sveltekit/scaffold/docs/playbooks/svelte-sveltekit-app.md +36 -0
- templates/svelte-sveltekit/scaffold/src/frontend/package.json +22 -0
- templates/svelte-sveltekit/scaffold/src/frontend/src/app.html +12 -0
- templates/svelte-sveltekit/scaffold/src/frontend/src/hooks.server.ts +14 -0
- templates/svelte-sveltekit/scaffold/src/frontend/src/lib/components/Greeting.svelte +6 -0
- templates/svelte-sveltekit/scaffold/src/frontend/src/lib/stores/count.test.ts +26 -0
- templates/svelte-sveltekit/scaffold/src/frontend/src/lib/stores/count.ts +4 -0
- templates/svelte-sveltekit/scaffold/src/frontend/src/routes/+layout.svelte +24 -0
- templates/svelte-sveltekit/scaffold/src/frontend/src/routes/+page.svelte +9 -0
- templates/svelte-sveltekit/scaffold/src/frontend/src/routes/+page.ts +7 -0
- templates/svelte-sveltekit/scaffold/src/frontend/src/routes/health/+server.ts +7 -0
- templates/svelte-sveltekit/scaffold/src/frontend/svelte.config.js +10 -0
- templates/svelte-sveltekit/scaffold/src/frontend/tsconfig.json +7 -0
- templates/svelte-sveltekit/scaffold/src/frontend/vite.config.ts +7 -0
- templates/svelte-sveltekit/scaffold/src/frontend/vitest.config.ts +11 -0
- templates/svelte-sveltekit/scaffold-boundary.yaml +29 -0
- templates/svelte-sveltekit/skills/svelte/SKILL.md +90 -0
- templates/svelte-sveltekit/skills/svelte/references/anatomy.md +62 -0
- templates/svelte-sveltekit/stack.yaml +70 -0
- templates/typescript-plain/scaffold/src/index.ts +3 -0
- templates/typescript-plain/scaffold/tsconfig.json +13 -0
- templates/typescript-plain/scaffold-boundary.yaml +22 -0
- templates/typescript-plain/stack.yaml +44 -0
- templates/vue-nuxt/rules/frontend.md +19 -0
- templates/vue-nuxt/scaffold/docs/engineering/nuxt-rules.md +30 -0
- templates/vue-nuxt/scaffold/docs/playbooks/nuxt-app.md +29 -0
- templates/vue-nuxt/scaffold/src/frontend/app.vue +3 -0
- templates/vue-nuxt/scaffold/src/frontend/nuxt.config.ts +11 -0
- templates/vue-nuxt/scaffold/src/frontend/package.json +20 -0
- templates/vue-nuxt/scaffold/src/frontend/pages/index.test.ts +19 -0
- templates/vue-nuxt/scaffold/src/frontend/pages/index.vue +11 -0
- templates/vue-nuxt/scaffold/src/frontend/vitest.config.ts +12 -0
- templates/vue-nuxt/scaffold-boundary.yaml +26 -0
- templates/vue-nuxt/skills/vue-nuxt/SKILL.md +57 -0
- templates/vue-nuxt/skills/vue-nuxt/references/anatomy.md +60 -0
- templates/vue-nuxt/stack.yaml +61 -0
- templates/wordpress/rules/backend.md +19 -0
- templates/wordpress/scaffold/docs/engineering/wordpress-rules.md +28 -0
- templates/wordpress/scaffold/docs/playbooks/wordpress-service.md +29 -0
- templates/wordpress/scaffold/src/backend/composer.json +17 -0
- templates/wordpress/scaffold/src/backend/phpcs.xml.dist +11 -0
- templates/wordpress/scaffold/src/backend/phpunit.xml +10 -0
- templates/wordpress/scaffold/src/backend/plugin/inc/health.php +8 -0
- templates/wordpress/scaffold/src/backend/plugin/plugin.php +28 -0
- templates/wordpress/scaffold/src/backend/tests/HealthStatusTest.php +15 -0
- templates/wordpress/scaffold/src/backend/theme/functions.php +18 -0
- templates/wordpress/scaffold/src/backend/theme/style.css +11 -0
- templates/wordpress/scaffold-boundary.yaml +23 -0
- templates/wordpress/skills/wordpress/SKILL.md +110 -0
- templates/wordpress/skills/wordpress/assets/wp-checklist.md +28 -0
- templates/wordpress/skills/wordpress/references/wp-development.md +75 -0
- templates/wordpress/skills/wordpress/references/wp-security.md +68 -0
- templates/wordpress/skills/wordpress/scripts/scan_wp_smells.py +91 -0
- templates/wordpress/skills/wordpress/versions.json +16 -0
- templates/wordpress/stack.yaml +60 -0
- thinking_os/__init__.py +1 -0
- thinking_os/_agent_markers.py +32 -0
- thinking_os/background.py +405 -0
- thinking_os/bootstrap_outcomes.py +200 -0
- thinking_os/budget.py +302 -0
- thinking_os/capture.py +495 -0
- thinking_os/cognition.py +516 -0
- thinking_os/cognition_schemas.py +517 -0
- thinking_os/compress.py +192 -0
- thinking_os/concepts.py +233 -0
- thinking_os/dashboard.py +159 -0
- thinking_os/database.py +2883 -0
- thinking_os/decay.py +393 -0
- thinking_os/digest.py +295 -0
- thinking_os/dispatcher.py +192 -0
- thinking_os/dispatcher_helpers.py +48 -0
- thinking_os/dispatchers/__init__.py +3 -0
- thinking_os/dispatchers/default.py +47 -0
- thinking_os/distill.py +192 -0
- thinking_os/doc_indexer.py +905 -0
- thinking_os/embeddings.py +943 -0
- thinking_os/formula_composer.py +556 -0
- thinking_os/gate_marker.py +75 -0
- thinking_os/graph.py +296 -0
- thinking_os/graph_indexer.py +360 -0
- thinking_os/health_check.py +517 -0
- thinking_os/impact.py +119 -0
- thinking_os/memory_gc.py +356 -0
- thinking_os/migrator_embeddings.py +318 -0
- thinking_os/precision.py +194 -0
- thinking_os/record_outcome.py +399 -0
- thinking_os/repair.py +105 -0
- thinking_os/retrieval_quality.py +239 -0
- thinking_os/roles_state.py +168 -0
- thinking_os/sanitizer.py +320 -0
- thinking_os/server.py +3160 -0
- thinking_os/session_enrich.py +272 -0
- thinking_os/session_observe_worker.py +111 -0
- thinking_os/session_startup.py +74 -0
- thinking_os/session_summary.py +245 -0
- thinking_os/task_analyzer.py +462 -0
- thinking_os/task_parser.py +342 -0
- thinking_os/task_sync.py +73 -0
- thinking_os/tools/__init__.py +6 -0
- thinking_os/tools/_shared.py +947 -0
- thinking_os/tools/cognition.py +1867 -0
- thinking_os/tools/docs.py +770 -0
- thinking_os/tools/learning.py +2078 -0
- thinking_os/tools/logs.py +79 -0
- thinking_os/tools/memory.py +840 -0
- thinking_os/tools/metrics.py +200 -0
- thinking_os/tools/retrieve.py +415 -0
- thinking_os/tools/routing.py +658 -0
- thinking_os/tools/tasks.py +449 -0
- thinking_os/tools/trajectory.py +181 -0
- thinking_os/tracing.py +235 -0
- web/__init__.py +5 -0
- web/_cache.py +118 -0
- web/_deps.py +56 -0
- web/_envelope.py +85 -0
- web/_project_context.py +140 -0
- web/chat_providers.py +108 -0
- web/init_jobs.py +216 -0
- web/routes/__init__.py +25 -0
- web/routes/_bounded_read.py +76 -0
- web/routes/board.py +1089 -0
- web/routes/cognition.py +1838 -0
- web/routes/config.py +635 -0
- web/routes/graph.py +513 -0
- web/routes/health.py +180 -0
- web/routes/hooks.py +288 -0
- web/routes/hub.py +1219 -0
- web/routes/logs.py +374 -0
- web/routes/metrics.py +43 -0
- web/routes/observability.py +400 -0
- web/routes/patterns.py +227 -0
- web/routes/presence.py +609 -0
- web/routes/roles.py +446 -0
- web/routes/scheduled.py +261 -0
- web/routes/search.py +238 -0
- web/routes/sessions.py +220 -0
- web/routes/settings.py +363 -0
- web/routes/stream.py +547 -0
- web/security.py +157 -0
- web/server.py +283 -0
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
version: 1
|
|
2
|
+
id: nestjs
|
|
3
|
+
language: typescript
|
|
4
|
+
label: "NestJS + TypeScript"
|
|
5
|
+
category: backend
|
|
6
|
+
|
|
7
|
+
structure:
|
|
8
|
+
root: src/backend
|
|
9
|
+
tree: |
|
|
10
|
+
src/backend/
|
|
11
|
+
├── package.json
|
|
12
|
+
├── tsconfig.json
|
|
13
|
+
├── nest-cli.json
|
|
14
|
+
└── src/
|
|
15
|
+
├── main.ts # NestFactory bootstrap (no logic)
|
|
16
|
+
├── app.module.ts # root module — wires feature modules only
|
|
17
|
+
├── common/ # cross-cutting: filters, pipes, guards, interceptors
|
|
18
|
+
└── <feature>/ # one module per domain
|
|
19
|
+
├── <feature>.module.ts
|
|
20
|
+
├── <feature>.controller.ts # thin — delegates to the provider
|
|
21
|
+
└── <feature>.service.ts # business logic (the only layer that thinks)
|
|
22
|
+
notes: "controllers thin, providers own logic; one global exception filter is the ONLY error-response shaper; validation via a global ValidationPipe + class-validator DTOs"
|
|
23
|
+
primary_skill: nestjs
|
|
24
|
+
skills: [nestjs]
|
|
25
|
+
|
|
26
|
+
substitutions:
|
|
27
|
+
DOMAIN_ROUTES: "Backend→`docs/playbooks/nestjs-service.md`"
|
|
28
|
+
SKILL_ROUTES: "Backend→`nestjs`"
|
|
29
|
+
ENGINEERING_RULE_ROUTING: "Backend→`docs/engineering/nestjs-rules.md`, Error format→`docs/api-contracts/error-format.md`"
|
|
30
|
+
TOOL_ROUTING_IMPL: "`lint-backend`, `test-backend`"
|
|
31
|
+
VERIFY_BACKEND_GLOB: "`src/backend/`"
|
|
32
|
+
VERIFY_BACKEND_SUITES: "lint-backend + test-backend"
|
|
33
|
+
VERIFY_BACKEND: "`cd src/backend && npm run lint && npm test`"
|
|
34
|
+
QUICK_ROUTING: |-
|
|
35
|
+
- NestJS controller / module task → [NestJS Service Playbook](./playbooks/nestjs-service.md)
|
|
36
|
+
- Guard / pipe / DTO validation → [NestJS Service Playbook](./playbooks/nestjs-service.md)
|
|
37
|
+
STACK_REF_CODES: |-
|
|
38
|
+
- `REF:PLAYBOOK-NESTJS` → `./playbooks/nestjs-service.md`
|
|
39
|
+
- `REF:NESTJS-RULES` → `./engineering/nestjs-rules.md`
|
|
40
|
+
|
|
41
|
+
ref_codes:
|
|
42
|
+
- {code: "REF:PLAYBOOK-NESTJS", path: "./playbooks/nestjs-service.md", desc: "NestJS service playbook"}
|
|
43
|
+
- {code: "REF:NESTJS-RULES", path: "./engineering/nestjs-rules.md", desc: "NestJS engineering rules"}
|
|
44
|
+
|
|
45
|
+
routing_entries:
|
|
46
|
+
- "NestJS controller / module task → [NestJS Service Playbook](./playbooks/nestjs-service.md)"
|
|
47
|
+
|
|
48
|
+
rules:
|
|
49
|
+
- {file: rules/backend.md, globs: ["src/backend/**/*.ts"]}
|
|
50
|
+
|
|
51
|
+
makefile_targets:
|
|
52
|
+
- {name: lint-backend, cmd: "npx --yes eslint . && cd src/backend && npm run lint"}
|
|
53
|
+
- {name: test-backend, cmd: "cd src/backend && npm test"}
|
|
54
|
+
|
|
55
|
+
verify:
|
|
56
|
+
- {glob: "src/backend/**/*.ts", suites: "lint-backend + test-backend", cmd: "npx --yes eslint . && cd src/backend && npm run lint && npm test"}
|
|
57
|
+
|
|
58
|
+
dimensions:
|
|
59
|
+
- {name: "NestJS controller", read_files: ["docs/playbooks/nestjs-service.md", "docs/engineering/nestjs-rules.md"]}
|
|
60
|
+
- {name: "Provider / service", read_files: ["docs/engineering/nestjs-rules.md"]}
|
|
61
|
+
- {name: "Module / DI wiring", read_files: ["docs/engineering/nestjs-rules.md"]}
|
|
62
|
+
- {name: "Pipe / DTO validation", read_files: ["docs/engineering/nestjs-rules.md", "docs/api-contracts/error-format.md"]}
|
|
63
|
+
- {name: "Guard / auth", read_files: ["docs/engineering/nestjs-rules.md"]}
|
|
64
|
+
|
|
65
|
+
skill_enforcement:
|
|
66
|
+
- {globs: ["src/backend/**/*.ts"], primary: nestjs, secondary: [clean-code, backend-fundamentals, api-design, auth-patterns, security-web, testing-strategy, observability]}
|
|
67
|
+
- {globs: ["src/backend/**/*.service.ts", "src/backend/**/repositories/**/*.ts", "src/backend/**/db/**/*.ts"], primary: nestjs, secondary: [clean-code, db-design, backend-fundamentals]}
|
|
68
|
+
- {globs: ["src/backend/**/*.guard.ts", "src/backend/**/auth*.ts"], primary: nestjs, secondary: [auth-patterns, security-web, clean-code]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
---
|
|
2
|
+
globs: ["src/frontend/**/*.{ts,tsx,css}", "src/frontend/**/*.js"]
|
|
3
|
+
alwaysApply: false
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Next.js Frontend Rules (auto-loaded on src/frontend/**)
|
|
7
|
+
|
|
8
|
+
When editing any file under `src/frontend/`, follow these standards:
|
|
9
|
+
|
|
10
|
+
- **Server Components by default** — add `"use client"` only when you need state, effects, or browser APIs.
|
|
11
|
+
- **Typed data boundaries** — every fetch uses a zod schema or explicit type; no `any`.
|
|
12
|
+
- **Accessibility** — semantic HTML, labelled inputs, keyboard-reachable interactions.
|
|
13
|
+
- **No layout shift** — fixed dimensions on images, reserved space for async content.
|
|
14
|
+
- **Colocated tests** — `Component.tsx` + `Component.test.tsx` side by side.
|
|
15
|
+
|
|
16
|
+
Canonical policy: `docs/engineering/frontend-rules.md`
|
|
17
|
+
Playbook: `docs/playbooks/frontend-ui.md`
|
|
18
|
+
Primary skill: `nextjs-react`
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
<!-- domain:FRONTEND | layer:index | ssot:true | updated:{{DATE}} -->
|
|
2
|
+
# Design System — Index
|
|
3
|
+
|
|
4
|
+
Purpose: Navigation hub for the design system — colors, typography, spacing, components, and motion.
|
|
5
|
+
Read when: Implementing or restyling UI components, or onboarding to the visual system.
|
|
6
|
+
Skip when: The task is purely backend or doesn't touch visual presentation.
|
|
7
|
+
Read next: The specific design doc relevant to your task.
|
|
8
|
+
|
|
9
|
+
> Nav: [Docs Index](../00-index.md)
|
|
10
|
+
|
|
11
|
+
## Files
|
|
12
|
+
|
|
13
|
+
- [Colors & Tokens](./colors-tokens.md) — Color palette, semantic tokens, dark mode
|
|
14
|
+
- [Typography & Spacing](./typography-spacing.md) — Font scale, spacing scale, layout grid
|
|
15
|
+
- [Components & Patterns](./components-patterns.md) — Reusable component recipes
|
|
16
|
+
- [Motion & Accessibility](./motion-accessibility.md) — Animations, transitions, a11y rules
|
|
17
|
+
|
|
18
|
+
## Authoring Rules
|
|
19
|
+
|
|
20
|
+
- Design tokens are SSOT. Tailwind config / CSS variables import from these docs.
|
|
21
|
+
- Components defined here have a single canonical implementation in `src/frontend/src/components/`.
|
|
22
|
+
- Accessibility is non-negotiable. See `../engineering/accessibility-web.md`.
|
|
23
|
+
- When the design system evolves, update the doc and components in the same PR.
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
<!-- domain:ALL | layer:reference | ssot:true | updated:2026-03-13 -->
|
|
2
|
+
|
|
3
|
+
# Colors & Tokens
|
|
4
|
+
|
|
5
|
+
Purpose: Design token values — colors, semantic aliases, and dark-mode mappings.
|
|
6
|
+
Read when: Task involves color selection, theme configuration, or design tokens.
|
|
7
|
+
Skip when: Code-only change with no visual impact.
|
|
8
|
+
Read next: Typography and spacing (typography-spacing.md) or components (components-patterns.md).
|
|
9
|
+
|
|
10
|
+
> Nav: [Docs Index](../00-index.md) | [Style Guide](../../STYLE_GUIDE.md)
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## 1. Theme Configuration
|
|
15
|
+
|
|
16
|
+
### Default Mode
|
|
17
|
+
|
|
18
|
+
- **Light mode is the DEFAULT**. Users see light mode on first visit.
|
|
19
|
+
- Dark mode is only activated when user explicitly toggles.
|
|
20
|
+
|
|
21
|
+
### Implementation
|
|
22
|
+
|
|
23
|
+
```javascript
|
|
24
|
+
// tailwind.config.ts
|
|
25
|
+
darkMode: 'class', // NOT 'media'
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
- Store preference in `localStorage` with key `theme`
|
|
29
|
+
- Respect `prefers-color-scheme` only on first visit if no stored preference
|
|
30
|
+
- Apply `.dark` class to `<html>` element
|
|
31
|
+
|
|
32
|
+
### Theme Toggle Component
|
|
33
|
+
|
|
34
|
+
- **Location**: Header (desktop: right side near user menu, mobile: in hamburger menu)
|
|
35
|
+
- **Icons**: Sun (light) / Moon (dark)
|
|
36
|
+
- **Transition**: `transition-colors duration-200`
|
|
37
|
+
- **Accessibility**: `aria-label="Toggle theme"`
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## 2. Color Palette (CSS Variables)
|
|
42
|
+
|
|
43
|
+
> [!CAUTION]
|
|
44
|
+
> **All colors MUST be defined as raw RGB values** (e.g., `67 118 248`) not Hex.
|
|
45
|
+
> This enables Tailwind's opacity modifier: `bg-brand-1/50` -> `rgba(67, 118, 248, 0.5)`
|
|
46
|
+
|
|
47
|
+
> [!WARNING]
|
|
48
|
+
> **Shadcn vs ExampleApp Colors**: Shadcn uses `--background` (white). ExampleApp uses `--bg` (#F6F7F7).
|
|
49
|
+
> **Resolution**: Override Shadcn's `--background` to match `--bg` in globals.css.
|
|
50
|
+
|
|
51
|
+
### 2.1 Brand Colors (Vibrant Gradient)
|
|
52
|
+
|
|
53
|
+
| Token | Light RGB | Dark RGB | Hex Reference | Usage |
|
|
54
|
+
| :-------------- | :------------ | :----------- | :---------------- | :-------------------- |
|
|
55
|
+
| `--brand-1` | `68 119 248` | `68 119 248` | #4477F8 | Primary Blue |
|
|
56
|
+
| `--brand-2` | `112 68 248` | `112 68 248` | #7044F8 | Middle Purple |
|
|
57
|
+
| `--brand-3` | `184 68 248` | `184 68 248` | #B844F8 | End Pink/Purple |
|
|
58
|
+
| `--accent-soft` | `208 221 255` | `30 41 59` | #D0DDFF / #1E293B | Background highlights |
|
|
59
|
+
|
|
60
|
+
### 2.2 Surface & Backgrounds (Canvas)
|
|
61
|
+
|
|
62
|
+
| Token | Light RGB | Dark RGB | Description |
|
|
63
|
+
| :------------ | :------------ | :--------- | :------------------------------- |
|
|
64
|
+
| `--bg` | `246 247 247` | `11 16 32` | Main window background |
|
|
65
|
+
| `--bg-canvas` | `228 230 229` | `7 11 22` | App background outside container |
|
|
66
|
+
| `--surface` | `255 255 255` | `15 22 48` | Cards, Modals, Dropdowns |
|
|
67
|
+
| `--surface-2` | `248 248 248` | `18 27 58` | Nested sections, inputs |
|
|
68
|
+
|
|
69
|
+
### 2.3 Typography Colors
|
|
70
|
+
|
|
71
|
+
| Token | Light RGB | Dark RGB | Accessibility Note |
|
|
72
|
+
| :----------------- | :------------ | :------------ | :------------------------- |
|
|
73
|
+
| `--text` | `13 14 19` | `238 241 247` | WCAG AAA on Surface |
|
|
74
|
+
| `--text-secondary` | `91 93 94` | `199 205 219` | For subheaders |
|
|
75
|
+
| `--text-muted` | `138 139 144` | `167 175 194` | For metadata, placeholders |
|
|
76
|
+
|
|
77
|
+
### 2.4 Semantic Feedback
|
|
78
|
+
|
|
79
|
+
| Type | Light RGB | Dark RGB | Hex | Usage |
|
|
80
|
+
| :---------- | :----------- | :------------ | :------ | :------------ |
|
|
81
|
+
| **Success** | `22 163 74` | `34 197 94` | #16A34A | Success toast |
|
|
82
|
+
| **Warning** | `245 158 11` | `251 191 36` | #F59E0B | Alerts |
|
|
83
|
+
| **Error** | `239 68 68` | `248 113 113` | #EF4444 | Form errors |
|
|
84
|
+
| **Info** | `14 165 233` | `56 189 248` | #0EA5E9 | Hints |
|
|
85
|
+
|
|
86
|
+
### 2.5 Tailwind Config Pattern
|
|
87
|
+
|
|
88
|
+
```javascript
|
|
89
|
+
// tailwind.config.ts
|
|
90
|
+
colors: {
|
|
91
|
+
'brand-1': 'rgb(var(--brand-1) / <alpha-value>)',
|
|
92
|
+
// ...
|
|
93
|
+
},
|
|
94
|
+
boxShadow: {
|
|
95
|
+
'premium': '0 10px 30px -10px rgb(var(--brand-1) / 0.15)', // Dynamic Shadow
|
|
96
|
+
}
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
### 2.6 globals.css Pattern
|
|
100
|
+
|
|
101
|
+
```css
|
|
102
|
+
:root {
|
|
103
|
+
--brand-1: 68 119 248;
|
|
104
|
+
--brand-2: 112 68 248;
|
|
105
|
+
--brand-3: 184 68 248;
|
|
106
|
+
--bg: 246 247 247;
|
|
107
|
+
--surface: 255 255 255;
|
|
108
|
+
/* ... etc */
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
.dark {
|
|
112
|
+
--brand-1: 68 119 248;
|
|
113
|
+
--brand-2: 112 68 248;
|
|
114
|
+
--brand-3: 184 68 248;
|
|
115
|
+
--bg: 11 16 32;
|
|
116
|
+
--surface: 15 22 48;
|
|
117
|
+
/* ... etc */
|
|
118
|
+
}
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
## 3. Visual Effects
|
|
124
|
+
|
|
125
|
+
### 3.1 Gradients
|
|
126
|
+
|
|
127
|
+
Used sparingly for emphasis.
|
|
128
|
+
|
|
129
|
+
- **CTA Gradient**: `linear-gradient(135deg, #4477f8 0%, #7044f8 50%, #b844f8 100%)`
|
|
130
|
+
- **Text Gradient (Hero)**: `bg-clip-text text-transparent bg-gradient-to-r from-brand-1 via-brand-2 to-brand-3`
|
|
131
|
+
- **Surface Glow**: Subtle glow behind active cards in Dark Mode
|
|
132
|
+
|
|
133
|
+
### 3.2 Shadows (Depths)
|
|
134
|
+
|
|
135
|
+
- **Focus Ring**: `ring-4 ring-brand-1/20`
|
|
136
|
+
- **Float**: `shadow-xl shadow-brand-1/10` (for sticky elements)
|
|
137
|
+
|
|
138
|
+
### 3.3 Blur (Glassmorphism)
|
|
139
|
+
|
|
140
|
+
- Used on **Sticky Header** and **Toast Notifications**
|
|
141
|
+
- Class: `backdrop-blur-md bg-surface/80`
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
<!-- domain:ALL | layer:reference | ssot:true | updated:2026-03-13 -->
|
|
2
|
+
|
|
3
|
+
# Components & Patterns
|
|
4
|
+
|
|
5
|
+
Purpose: Reusable UI component patterns, states, and composition rules.
|
|
6
|
+
Read when: Task involves building or styling UI components.
|
|
7
|
+
Skip when: Layout or color adjustments alone.
|
|
8
|
+
Read next: Colors (colors-tokens.md), typography (typography-spacing.md), or motion (motion-accessibility.md).
|
|
9
|
+
|
|
10
|
+
> Nav: [Docs Index](../00-index.md) | [Style Guide](../../STYLE_GUIDE.md)
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## 1. Design Philosophy
|
|
15
|
+
|
|
16
|
+
### Visual Excellence Standard
|
|
17
|
+
|
|
18
|
+
ExampleApp's design must feel **premium, modern, and conversion-focused**.
|
|
19
|
+
|
|
20
|
+
> [!TIP]
|
|
21
|
+
> Think like an experienced graphic designer with knowledge of:
|
|
22
|
+
>
|
|
23
|
+
> - Sales psychology & CRO (Conversion Rate Optimization)
|
|
24
|
+
> - 3D elements & abstract shapes for visual interest
|
|
25
|
+
> - Micro-animations for engagement
|
|
26
|
+
> - Premium color palettes (no generic red/blue/green)
|
|
27
|
+
|
|
28
|
+
### Design Principles
|
|
29
|
+
|
|
30
|
+
1. **Wow Factor**: First impression must impress - use gradients, subtle animations, glassmorphism
|
|
31
|
+
2. **Trust Building**: Social proof, security badges, professional typography
|
|
32
|
+
3. **Clear Hierarchy**: Guide the eye to CTAs with size, color, and whitespace
|
|
33
|
+
4. **Mobile Excellence**: 60%+ traffic is mobile - design mobile-first
|
|
34
|
+
5. **Fast Perceived Performance**: Skeleton loaders, optimistic UI, smooth transitions
|
|
35
|
+
|
|
36
|
+
### What to Avoid
|
|
37
|
+
|
|
38
|
+
- Generic/flat designs
|
|
39
|
+
- Default browser fonts
|
|
40
|
+
- Plain solid color backgrounds
|
|
41
|
+
- Static, lifeless interfaces
|
|
42
|
+
- Placeholder images (use generated or real assets)
|
|
43
|
+
|
|
44
|
+
### What to Embrace
|
|
45
|
+
|
|
46
|
+
- Curated color harmonies (HSL-based, not plain hex)
|
|
47
|
+
- Subtle gradients and shadows
|
|
48
|
+
- Micro-interactions (hover effects, smooth transitions)
|
|
49
|
+
- Modern typography (Baloo 2 + Inter)
|
|
50
|
+
- Glassmorphism for overlays (when appropriate)
|
|
51
|
+
- Abstract decorative elements (subtle, not distracting)
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## 2. Site Branding
|
|
56
|
+
|
|
57
|
+
- **Site Name**: `ExampleApp` (not "Example" or "example")
|
|
58
|
+
- **Logo Text**: "ExampleApp" or "Example App" (with space for readability)
|
|
59
|
+
- **Domain**: example.com
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## 3. Buttons
|
|
64
|
+
|
|
65
|
+
The most critical conversion element.
|
|
66
|
+
|
|
67
|
+
### Primary (Money Button)
|
|
68
|
+
|
|
69
|
+
- **Background**: `bg-gradient-to-r from-brand-1 to-brand-3`
|
|
70
|
+
- **Text**: White, Bold (Inter Medium/Semibold)
|
|
71
|
+
- **Visuals**: Mild shadow `shadow-lg`, rounded `rounded-full` or `rounded-xl`
|
|
72
|
+
- **Hover**: Brightness up / Scale 1.05
|
|
73
|
+
|
|
74
|
+
### Secondary (Outline)
|
|
75
|
+
|
|
76
|
+
- **Border**: `border border-border`
|
|
77
|
+
- **Background**: Transparent (hover: surface-2)
|
|
78
|
+
- **Text**: `text-text-secondary` (hover: text-text)
|
|
79
|
+
|
|
80
|
+
### Ghost (Link)
|
|
81
|
+
|
|
82
|
+
- **Background**: None
|
|
83
|
+
- **Text**: `text-text-muted` (hover: text-brand-1)
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## 4. Cards (Surface)
|
|
88
|
+
|
|
89
|
+
- **Base**: `bg-surface` border `border-border`
|
|
90
|
+
- **Shadow**: `shadow-sm` (default) -> `shadow-md` (hover)
|
|
91
|
+
- **Radius**: `rounded-2xl` (Standard for Containers/Cards)
|
|
92
|
+
- **Padding**: `p-6` (default)
|
|
93
|
+
- **Inputs/Buttons**: `rounded-xl` (Standard for Interactive Elements)
|
|
94
|
+
- **Borders**: Thin, crisp borders (`1px`) in light mode
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## 5. Loading States
|
|
99
|
+
|
|
100
|
+
**Skeleton Loaders** are preferred over spinners for initial load.
|
|
101
|
+
|
|
102
|
+
- **Animation**: `animate-pulse`
|
|
103
|
+
- **Color**: `bg-muted` (or `bg-surface-2`)
|
|
104
|
+
- **Radius**: Match the content being loaded (e.g. `rounded-full` for avatars)
|
|
105
|
+
|
|
106
|
+
```tsx
|
|
107
|
+
<div className="space-y-2">
|
|
108
|
+
<div className="h-4 w-[250px] animate-pulse rounded bg-muted" />
|
|
109
|
+
<div className="h-4 w-[200px] animate-pulse rounded bg-muted" />
|
|
110
|
+
</div>
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
## 6. Empty States
|
|
116
|
+
|
|
117
|
+
Always provide a path forward.
|
|
118
|
+
|
|
119
|
+
- **Visual**: Icon or Illustration
|
|
120
|
+
- **Text**: Clear "Status" + "Solution"
|
|
121
|
+
- **Action**: Button to resolve/create
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## 7. Design Tradeoffs
|
|
126
|
+
|
|
127
|
+
> Every philosophy accepts certain tradeoffs. Being explicit prevents surprise.
|
|
128
|
+
|
|
129
|
+
| We Choose | Over | Because |
|
|
130
|
+
| :------------------ | :------------ | :------------------------------- |
|
|
131
|
+
| **Opinionated** | Neutral | Memorable > forgettable |
|
|
132
|
+
| **Consistent** | Flexible | Maintainable > one-off solutions |
|
|
133
|
+
| **Bold** | Safe | Standing out > blending in |
|
|
134
|
+
| **Semantic Tokens** | Direct Values | Scalability > initial speed |
|
|
135
|
+
| **Fewer Options** | More Options | Clarity > choice paralysis |
|
|
136
|
+
| **Performance** | Features | Fast basics > slow extras |
|
|
137
|
+
| **Mobile-First** | Desktop-First | 60%+ traffic is mobile |
|
|
138
|
+
|
|
139
|
+
---
|
|
140
|
+
|
|
141
|
+
## 8. Anti-Patterns
|
|
142
|
+
|
|
143
|
+
| Anti-Pattern | Why Harmful | Alternative |
|
|
144
|
+
| :------------------------- | :---------------------------- | :---------------------------------- |
|
|
145
|
+
| **Hardcoded colors** | Impossible to theme | Use semantic tokens |
|
|
146
|
+
| **Inconsistent spacing** | Creates visual noise | Use 4pt spacing scale |
|
|
147
|
+
| **Too many fonts** | Looks chaotic | Max 2 fonts |
|
|
148
|
+
| **Purple AI gradients** | Overused, generic | Distinctive palette |
|
|
149
|
+
| **Motion without purpose** | Distracting, unprofessional | Animate with intent |
|
|
150
|
+
| **Ignoring dark mode** | Excludes users | Design both modes |
|
|
151
|
+
| **className overrides** | Unmaintainable | Create component variants |
|
|
152
|
+
| **Missing focus states** | Accessibility failure | Always show focus rings |
|
|
153
|
+
| **Placeholder images** | Unprofessional | Generate or use real assets |
|
|
154
|
+
| **Generic stock photos** | Feels corporate/fake | Custom or AI-generated |
|
|
155
|
+
| **CSS Media Query Hacks** | Breaks composition | Use standard Tailwind |
|
|
156
|
+
| **Double Mobile Headers** | Confusing UI, double triggers | Single global header |
|
|
157
|
+
| **Low Z-Index Modals** | Hides under sticky headers | Use `z-max` (100) |
|
|
158
|
+
| **Horizontal Overflow** | White bars on mobile edges | `overflow-x-hidden` + `break-words` |
|
|
159
|
+
| **Tight Mobile Padding** | Cramped, cheap feel | Min `px-6` (24px) padding |
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
<!-- domain:ALL | layer:reference | ssot:true | updated:2026-03-13 -->
|
|
2
|
+
|
|
3
|
+
# Motion & Accessibility
|
|
4
|
+
|
|
5
|
+
Purpose: Animation guidelines, reduced-motion support, and WCAG compliance.
|
|
6
|
+
Read when: Task involves animations, transitions, or accessibility compliance.
|
|
7
|
+
Skip when: Static layouts or non-interactive features.
|
|
8
|
+
Read next: Components (components-patterns.md) or the frontend-ui playbook.
|
|
9
|
+
|
|
10
|
+
> Nav: [Docs Index](../00-index.md) | [Style Guide](../../STYLE_GUIDE.md)
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## 1. Motion & Animation
|
|
15
|
+
|
|
16
|
+
### 1.1 Motion Philosophy
|
|
17
|
+
|
|
18
|
+
- Animation should **signal state changes**, **guide attention**, and **create delight**
|
|
19
|
+
- Never distract or delay the user
|
|
20
|
+
- The absence of _expected_ motion feels broken
|
|
21
|
+
- One well-crafted hero animation > twenty scattered micro-interactions
|
|
22
|
+
|
|
23
|
+
### 1.2 Timing Scale
|
|
24
|
+
|
|
25
|
+
| Name | Duration | Tailwind | Use Case |
|
|
26
|
+
| :---------- | :------- | :------------- | :--------------------------- |
|
|
27
|
+
| **Instant** | 50ms | `duration-50` | Micro-feedback (hover color) |
|
|
28
|
+
| **Fast** | 150ms | `duration-150` | UI feedback (button click) |
|
|
29
|
+
| **Normal** | 300ms | `duration-300` | Standard transitions |
|
|
30
|
+
| **Slow** | 500ms | `duration-500` | Complex animations |
|
|
31
|
+
| **Hero** | 700ms+ | `duration-700` | Hero section animations |
|
|
32
|
+
|
|
33
|
+
### 1.3 Easing Functions
|
|
34
|
+
|
|
35
|
+
| Name | CSS Value | Use Case |
|
|
36
|
+
| :------------ | :----------------------------- | :-------------------- |
|
|
37
|
+
| `ease-out` | `cubic-bezier(0, 0, 0.2, 1)` | Elements entering |
|
|
38
|
+
| `ease-in` | `cubic-bezier(0.4, 0, 1, 1)` | Elements exiting |
|
|
39
|
+
| `ease-in-out` | `cubic-bezier(0.4, 0, 0.2, 1)` | On-screen movement |
|
|
40
|
+
| `spring` | Framer Motion | Playful, organic feel |
|
|
41
|
+
|
|
42
|
+
### 1.4 Implementation (Framer Motion)
|
|
43
|
+
|
|
44
|
+
```tsx
|
|
45
|
+
// Entrance animation
|
|
46
|
+
<motion.div
|
|
47
|
+
initial={{ opacity: 0, y: 20 }}
|
|
48
|
+
animate={{ opacity: 1, y: 0 }}
|
|
49
|
+
transition={{ duration: 0.5, ease: "easeOut" }}
|
|
50
|
+
>
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## 2. Performance Targets
|
|
56
|
+
|
|
57
|
+
> [!IMPORTANT]
|
|
58
|
+
> Speed and stability are **user experience concerns**, not just technical concerns.
|
|
59
|
+
|
|
60
|
+
| Metric | Target | Tool |
|
|
61
|
+
| :--------------------------------- | :--------- | :---------------------- |
|
|
62
|
+
| **LCP** (Largest Contentful Paint) | < 2.5s | Lighthouse |
|
|
63
|
+
| **FCP** (First Contentful Paint) | < 1.5s | Lighthouse |
|
|
64
|
+
| **CLS** (Cumulative Layout Shift) | < 0.1 | Lighthouse |
|
|
65
|
+
| **Animation Frame Rate** | 60fps | DevTools |
|
|
66
|
+
| **Bundle Size (First Load)** | < 200KB JS | `@next/bundle-analyzer` |
|
|
67
|
+
|
|
68
|
+
### Performance-Impacting Decisions
|
|
69
|
+
|
|
70
|
+
- Lazy load images below the fold (`loading="lazy"`)
|
|
71
|
+
- Use `next/image` with explicit `sizes`
|
|
72
|
+
- Preload critical fonts
|
|
73
|
+
- Code-split large components with `next/dynamic`
|
|
74
|
+
- Don't load heavy animations on mobile
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## 3. Accessibility Requirements
|
|
79
|
+
|
|
80
|
+
> [!CAUTION]
|
|
81
|
+
> Accessibility is not a feature -- it's the **foundation**.
|
|
82
|
+
|
|
83
|
+
### Non-Negotiable Requirements
|
|
84
|
+
|
|
85
|
+
| Element | Requirement |
|
|
86
|
+
| :---------------------- | :------------------------------------------------------------- |
|
|
87
|
+
| **Color Contrast** | WCAG AA (4.5:1 for text, 3:1 for large text) |
|
|
88
|
+
| **Focus States** | Visible, high-contrast focus rings on ALL interactive elements |
|
|
89
|
+
| **Touch Targets** | Minimum 44x44px |
|
|
90
|
+
| **Keyboard Navigation** | All interactive elements reachable via Tab |
|
|
91
|
+
| **Semantic HTML** | Proper `<h1>`-`<h6>` hierarchy, landmarks (`<main>`, `<nav>`) |
|
|
92
|
+
| **Alt Text** | Meaningful descriptions for all images |
|
|
93
|
+
| **ARIA Labels** | For icons and non-text elements |
|
|
94
|
+
|
|
95
|
+
### Focus Ring Standard
|
|
96
|
+
|
|
97
|
+
```css
|
|
98
|
+
/* Default focus ring */
|
|
99
|
+
.focus-visible:focus {
|
|
100
|
+
outline: 2px solid rgb(var(--brand-1));
|
|
101
|
+
outline-offset: 2px;
|
|
102
|
+
}
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## 4. Responsive Design Patterns
|
|
108
|
+
|
|
109
|
+
> [!IMPORTANT]
|
|
110
|
+
> Use standard Tailwind breakpoints. Ensure server-side rendering matches client structure to avoid hydration errors.
|
|
111
|
+
|
|
112
|
+
### 4.1 Breakpoints
|
|
113
|
+
|
|
114
|
+
- **Mobile First**: Default styles are mobile.
|
|
115
|
+
- **Tablet**: `md:` (768px+)
|
|
116
|
+
- **Desktop**: `lg:` (1024px+)
|
|
117
|
+
- **Wide**: `xl:` (1280px+)
|
|
118
|
+
|
|
119
|
+
### 4.2 Common Patterns
|
|
120
|
+
|
|
121
|
+
```tsx
|
|
122
|
+
// Stack on mobile, Row on desktop
|
|
123
|
+
<div className="flex flex-col md:flex-row gap-4">
|
|
124
|
+
|
|
125
|
+
// Hide on mobile, Show on desktop
|
|
126
|
+
<div className="hidden md:block">
|
|
127
|
+
|
|
128
|
+
// Container Padding (Safe Area)
|
|
129
|
+
// Must be px-6 on mobile for breathing room
|
|
130
|
+
<div className="px-6 sm:px-8 lg:px-12">
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
### 4.3 Layout Safeguards
|
|
134
|
+
|
|
135
|
+
1. **Global Scroll Lock**: `html, body { overflow-x: hidden; }` must be applied to prevent horizontal scroll on narrow devices.
|
|
136
|
+
2. **Text Constraint**: Use `break-words` on large headings.
|
|
137
|
+
3. **Narrow Screen Logic**: Hide non-essential text/icons on screens < 340px (Galaxy Fold).
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
<!-- domain:ALL | layer:reference | ssot:true | updated:2026-03-13 -->
|
|
2
|
+
|
|
3
|
+
# Typography & Spacing
|
|
4
|
+
|
|
5
|
+
Purpose: Font stacks, type scale, and spacing/grid rules.
|
|
6
|
+
Read when: Task involves typography, spacing, layout, or responsive grid.
|
|
7
|
+
Skip when: Color or component styling without layout changes.
|
|
8
|
+
Read next: Colors and tokens (colors-tokens.md) or components (components-patterns.md).
|
|
9
|
+
|
|
10
|
+
> Nav: [Docs Index](../00-index.md) | [Style Guide](../../STYLE_GUIDE.md)
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## 1. Font Families
|
|
15
|
+
|
|
16
|
+
- **Headings**: `Baloo 2` (Rounded, Friendly, Modern) — Weights: 700 (Bold)
|
|
17
|
+
- **Body**: `Inter` (Clean, Legible, Standard) — Weights: 400 (Regular), 500 (Medium), 600 (SemiBold)
|
|
18
|
+
|
|
19
|
+
## 2. Type Scale (Tailwind)
|
|
20
|
+
|
|
21
|
+
| Class | Size (rem) | Size (px) | Line Height | Usage |
|
|
22
|
+
| :---------- | :--------- | :-------- | :---------- | :----------------------- |
|
|
23
|
+
| `text-xs` | 0.75 | 12px | 1rem | Badges, Microcopy |
|
|
24
|
+
| `text-sm` | 0.875 | 14px | 1.25rem | UI Labels, Metadata |
|
|
25
|
+
| `text-base` | 1 | 16px | 1.5rem | **Default Body Text** |
|
|
26
|
+
| `text-lg` | 1.125 | 18px | 1.75rem | Intro paragraphs |
|
|
27
|
+
| `text-xl` | 1.25 | 20px | 1.75rem | Section Headers (H3) |
|
|
28
|
+
| `text-2xl` | 1.5 | 24px | 2rem | Card Titles (H2) |
|
|
29
|
+
| `text-3xl` | 1.875 | 30px | 2.25rem | Page Titles (H1 Mobile) |
|
|
30
|
+
| `text-4xl` | 2.25 | 36px | 2.5rem | Page Titles (H1 Desktop) |
|
|
31
|
+
| `text-5xl` | 3 | 48px | 1 | Hero Headings |
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## 3. Spacing & Layout
|
|
36
|
+
|
|
37
|
+
We follow a **4pt grid system** (Tailwind default).
|
|
38
|
+
|
|
39
|
+
### 3.1 Container Configuration
|
|
40
|
+
|
|
41
|
+
```javascript
|
|
42
|
+
// tailwind.config.ts
|
|
43
|
+
container: {
|
|
44
|
+
center: true,
|
|
45
|
+
padding: {
|
|
46
|
+
DEFAULT: '1rem', // 16px mobile
|
|
47
|
+
sm: '1.5rem', // 24px small
|
|
48
|
+
lg: '2rem', // 32px large
|
|
49
|
+
xl: '2rem',
|
|
50
|
+
'2xl': '2rem',
|
|
51
|
+
},
|
|
52
|
+
screens: {
|
|
53
|
+
'2xl': '1400px', // Max container width (Audit Fix)
|
|
54
|
+
},
|
|
55
|
+
}
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### 3.2 Section Spacing (`py-`)
|
|
59
|
+
|
|
60
|
+
- **Tight**: `py-8` (32px)
|
|
61
|
+
- **Normal**: `py-16` (64px) — **Standard Section**
|
|
62
|
+
- **Loose**: `py-24` (96px) — **Hero / Feature Splits**
|
|
63
|
+
|
|
64
|
+
### 3.3 Gap
|
|
65
|
+
|
|
66
|
+
- **Stack (Vertical)**: `space-y-4` (Forms), `space-y-6` (Content)
|
|
67
|
+
- **Grid (Horizontal)**: `gap-6` (Cards), `gap-8` (Columns)
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## 4. Z-Index Layering System
|
|
72
|
+
|
|
73
|
+
> [!IMPORTANT]
|
|
74
|
+
> All z-index values MUST follow this scale. Do not use arbitrary values.
|
|
75
|
+
|
|
76
|
+
| Layer | Z-Index | Tailwind Class | Elements |
|
|
77
|
+
| :---------- | :------ | :------------- | :--------------------------------- |
|
|
78
|
+
| **Base** | 0 | `z-0` | Page content, sections |
|
|
79
|
+
| **Raised** | 10 | `z-raised` | Cards with hover, dropdowns |
|
|
80
|
+
| **Sticky** | 40 | `z-sticky` | Sticky bottom bar, floating CTAs |
|
|
81
|
+
| **Header** | 50 | `z-header` | Site header (always above content) |
|
|
82
|
+
| **Overlay** | 60 | `z-overlay` | Backdrop for modals |
|
|
83
|
+
| **Modal** | 70 | `z-modal` | Modal dialogs |
|
|
84
|
+
| **Toast** | 80 | `z-toast` | Toast notifications |
|
|
85
|
+
| **Tooltip** | 90 | `z-tooltip` | Tooltips, popovers |
|
|
86
|
+
| **Max** | 100 | `z-max` | **Mobile Nav**, Emergency overlays |
|
|
87
|
+
|
|
88
|
+
### Z-Index Rules
|
|
89
|
+
|
|
90
|
+
1. **Header (`z-header`)** must ALWAYS be above content sections.
|
|
91
|
+
2. **Sticky bars** use `z-sticky` (below header).
|
|
92
|
+
3. **Mobile Nav / Modals** MUST use `z-max` (100) to overlay sticky headers.
|
|
93
|
+
4. **Use Semantic Tokens**: `z-modal` instead of `z-[70]`.
|
|
94
|
+
5. **Stacking context**: Use `isolate` class on parent containers if needed.
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## 5. Grid System
|
|
99
|
+
|
|
100
|
+
We use a **12-column grid** for main layouts.
|
|
101
|
+
|
|
102
|
+
```tsx
|
|
103
|
+
<div className="grid grid-cols-4 md:grid-cols-8 lg:grid-cols-12 gap-6">
|
|
104
|
+
<div className="col-span-4">Sidebar</div>
|
|
105
|
+
<div className="col-span-8">Content</div>
|
|
106
|
+
</div>
|
|
107
|
+
```
|