@mrciphersmith/keryx 0.2.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +351 -0
- package/dist/cli.js +48427 -0
- package/dist/proxy-worker.js +381 -0
- package/package.json +63 -0
- package/src/gdgraph/affected.test.ts +100 -0
- package/src/gdgraph/affected.ts +135 -0
- package/src/gdgraph/build-integrity.test.ts +193 -0
- package/src/gdgraph/build-lang.test.ts +399 -0
- package/src/gdgraph/build.test.ts +120 -0
- package/src/gdgraph/build.ts +804 -0
- package/src/gdgraph/config.test.ts +47 -0
- package/src/gdgraph/config.ts +113 -0
- package/src/gdgraph/core-sources.test.ts +99 -0
- package/src/gdgraph/core-sources.ts +20 -0
- package/src/gdgraph/enrich.ts +79 -0
- package/src/gdgraph/fallback.test.ts +153 -0
- package/src/gdgraph/find.test.ts +78 -0
- package/src/gdgraph/find.ts +107 -0
- package/src/gdgraph/pagerank.ts +129 -0
- package/src/gdgraph/path.test.ts +56 -0
- package/src/gdgraph/path.ts +112 -0
- package/src/gdgraph/query.ts +133 -0
- package/src/gdgraph/repomap.test.ts +110 -0
- package/src/gdgraph/repomap.ts +193 -0
- package/src/gdgraph/service.test.ts +59 -0
- package/src/gdgraph/service.ts +51 -0
- package/src/gdgraph/staleness.ts +20 -0
- package/src/gdgraph/symbol.test.ts +89 -0
- package/src/gdgraph/symbol.ts +123 -0
- package/src/gdgraph/symbols-capability.test.ts +41 -0
- package/src/gdgraph/symbols-capability.ts +49 -0
- package/src/gdgraph/target.ts +56 -0
- package/src/gdgraph/treesitter/adapter.test.ts +249 -0
- package/src/gdgraph/treesitter/adapter.ts +213 -0
- package/src/gdgraph/treesitter/extract.test.ts +278 -0
- package/src/gdgraph/treesitter/extract.ts +389 -0
- package/src/gdgraph/treesitter/grammars.ts +110 -0
- package/src/gdgraph/treesitter/no-treesitter-import.test.ts +51 -0
- package/src/gdgraph/treesitter/resolve-calls.test.ts +38 -0
- package/src/gdgraph/types.ts +63 -0
- package/src/gdskills/bundled/rules/core/api-contracts.mdc +148 -0
- package/src/gdskills/bundled/rules/core/async-patterns.mdc +185 -0
- package/src/gdskills/bundled/rules/core/clean-architecture.mdc +163 -0
- package/src/gdskills/bundled/rules/core/code-review-ai-assistant.mdc +49 -0
- package/src/gdskills/bundled/rules/core/code-review-b091-profile.mdc +48 -0
- package/src/gdskills/bundled/rules/core/code-style-patterns.mdc +54 -0
- package/src/gdskills/bundled/rules/core/commit-message-formatting.mdc +25 -0
- package/src/gdskills/bundled/rules/core/database-patterns.mdc +162 -0
- package/src/gdskills/bundled/rules/core/documentation-management.mdc +106 -0
- package/src/gdskills/bundled/rules/core/error-handling.mdc +163 -0
- package/src/gdskills/bundled/rules/core/execution-metrics.md +99 -0
- package/src/gdskills/bundled/rules/core/frontend-assistant.mdc +40 -0
- package/src/gdskills/bundled/rules/core/git-rules.mdc +37 -0
- package/src/gdskills/bundled/rules/core/gproject-contracts.mdc +198 -0
- package/src/gdskills/bundled/rules/core/implementation-doc-mandate.mdc +149 -0
- package/src/gdskills/bundled/rules/core/implementation-plans.mdc +58 -0
- package/src/gdskills/bundled/rules/core/jobs-documentation.mdc +221 -0
- package/src/gdskills/bundled/rules/core/mobx-store-template.mdc +561 -0
- package/src/gdskills/bundled/rules/core/model-selection.mdc +53 -0
- package/src/gdskills/bundled/rules/core/nestjs-dto.mdc +50 -0
- package/src/gdskills/bundled/rules/core/playwright-testing.mdc +321 -0
- package/src/gdskills/bundled/rules/core/requirements-management.mdc +35 -0
- package/src/gdskills/bundled/rules/core/requirements-package-standard.mdc +103 -0
- package/src/gdskills/bundled/rules/core/review-agent-profile.mdc +49 -0
- package/src/gdskills/bundled/rules/core/review-strict-profile.mdc +44 -0
- package/src/gdskills/bundled/rules/core/rule-management-workflow.mdc +62 -0
- package/src/gdskills/bundled/rules/core/security-baseline.mdc +155 -0
- package/src/gdskills/bundled/rules/core/shared-definitions.mdc +79 -0
- package/src/gdskills/bundled/rules/core/skill-lifecycle.mdc +55 -0
- package/src/gdskills/bundled/rules/core/skills-storage-workflow.mdc +88 -0
- package/src/gdskills/bundled/rules/core/solid-principles.mdc +149 -0
- package/src/gdskills/bundled/rules/core/storybook-guidelines.mdc +36 -0
- package/src/gdskills/bundled/rules/core/subagent-context-construction.md +107 -0
- package/src/gdskills/bundled/rules/core/subagent-status-protocol.md +169 -0
- package/src/gdskills/bundled/rules/core/tdd-workflow.mdc +96 -0
- package/src/gdskills/bundled/skills/orchestration/code-verifier/SKILL.codex.md +47 -0
- package/src/gdskills/bundled/skills/orchestration/code-verifier/SKILL.cursor.md +55 -0
- package/src/gdskills/bundled/skills/orchestration/code-verifier/SKILL.md +352 -0
- package/src/gdskills/bundled/skills/orchestration/code-verifier/SKILL.opencode.md +39 -0
- package/src/gdskills/bundled/skills/orchestration/code-verifier/SKILL.zed.md +29 -0
- package/src/gdskills/bundled/skills/orchestration/context-collector/SKILL.codex.md +567 -0
- package/src/gdskills/bundled/skills/orchestration/context-collector/SKILL.cursor.md +567 -0
- package/src/gdskills/bundled/skills/orchestration/context-collector/SKILL.md +655 -0
- package/src/gdskills/bundled/skills/orchestration/context-collector/SKILL.opencode.md +567 -0
- package/src/gdskills/bundled/skills/orchestration/context-collector/SKILL.zed.md +567 -0
- package/src/gdskills/bundled/skills/orchestration/context-collector/input-contract.schema.json +134 -0
- package/src/gdskills/bundled/skills/orchestration/context-collector/orchestrator-prompt.md +183 -0
- package/src/gdskills/bundled/skills/orchestration/context-collector/output-contract.schema.json +208 -0
- package/src/gdskills/bundled/skills/orchestration/feature-analyzer/SKILL.codex.md +1412 -0
- package/src/gdskills/bundled/skills/orchestration/feature-analyzer/SKILL.cursor.md +1412 -0
- package/src/gdskills/bundled/skills/orchestration/feature-analyzer/SKILL.detail.md +735 -0
- package/src/gdskills/bundled/skills/orchestration/feature-analyzer/SKILL.md +468 -0
- package/src/gdskills/bundled/skills/orchestration/feature-analyzer/SKILL.opencode.md +1412 -0
- package/src/gdskills/bundled/skills/orchestration/feature-analyzer/SKILL.zed.md +1412 -0
- package/src/gdskills/bundled/skills/orchestration/feature-analyzer/analysis-request.md +62 -0
- package/src/gdskills/bundled/skills/orchestration/feature-analyzer/analysis-request.template.md +79 -0
- package/src/gdskills/bundled/skills/orchestration/feature-analyzer/input-contract.schema.json +247 -0
- package/src/gdskills/bundled/skills/orchestration/feature-analyzer/orchestrator-prompt.md +362 -0
- package/src/gdskills/bundled/skills/orchestration/feature-analyzer/output-contract.schema.json +87 -0
- package/src/gdskills/bundled/skills/orchestration/feature-dev/SKILL.codex.md +105 -0
- package/src/gdskills/bundled/skills/orchestration/feature-dev/SKILL.cursor.md +105 -0
- package/src/gdskills/bundled/skills/orchestration/feature-dev/SKILL.md +165 -0
- package/src/gdskills/bundled/skills/orchestration/flow-orchestrator/SKILL.md +379 -0
- package/src/gdskills/bundled/skills/orchestration/flow-orchestrator/input-contract.schema.json +33 -0
- package/src/gdskills/bundled/skills/orchestration/flow-orchestrator/output-contract.schema.json +41 -0
- package/src/gdskills/bundled/skills/orchestration/issue-analyzer/SKILL.codex.md +307 -0
- package/src/gdskills/bundled/skills/orchestration/issue-analyzer/SKILL.cursor.md +307 -0
- package/src/gdskills/bundled/skills/orchestration/issue-analyzer/SKILL.md +373 -0
- package/src/gdskills/bundled/skills/orchestration/issue-analyzer/SKILL.opencode.md +307 -0
- package/src/gdskills/bundled/skills/orchestration/issue-analyzer/SKILL.zed.md +307 -0
- package/src/gdskills/bundled/skills/orchestration/issue-analyzer/input-contract.schema.json +130 -0
- package/src/gdskills/bundled/skills/orchestration/issue-analyzer/issue-request.template.md +50 -0
- package/src/gdskills/bundled/skills/orchestration/issue-analyzer/orchestrator-prompt.md +155 -0
- package/src/gdskills/bundled/skills/orchestration/issue-analyzer/output-contract.schema.json +61 -0
- package/src/gdskills/bundled/skills/orchestration/job-documenter/SKILL.codex.md +365 -0
- package/src/gdskills/bundled/skills/orchestration/job-documenter/SKILL.cursor.md +365 -0
- package/src/gdskills/bundled/skills/orchestration/job-documenter/SKILL.md +373 -0
- package/src/gdskills/bundled/skills/orchestration/job-documenter/SKILL.opencode.md +365 -0
- package/src/gdskills/bundled/skills/orchestration/job-documenter/SKILL.zed.md +365 -0
- package/src/gdskills/bundled/skills/orchestration/job-documenter/input-contract.schema.json +55 -0
- package/src/gdskills/bundled/skills/orchestration/job-documenter/output-contract.schema.json +58 -0
- package/src/gdskills/bundled/skills/orchestration/job-orchestrator/SKILL.codex.md +1701 -0
- package/src/gdskills/bundled/skills/orchestration/job-orchestrator/SKILL.cursor.md +1701 -0
- package/src/gdskills/bundled/skills/orchestration/job-orchestrator/SKILL.md +1734 -0
- package/src/gdskills/bundled/skills/orchestration/job-orchestrator/SKILL.opencode.md +1701 -0
- package/src/gdskills/bundled/skills/orchestration/job-orchestrator/SKILL.zed.md +1701 -0
- package/src/gdskills/bundled/skills/orchestration/job-orchestrator/input-contract.schema.json +188 -0
- package/src/gdskills/bundled/skills/orchestration/job-orchestrator/orchestrator-prompt.md +179 -0
- package/src/gdskills/bundled/skills/orchestration/job-orchestrator/output-contract.schema.json +103 -0
- package/src/gdskills/bundled/skills/orchestration/job-orchestrator/state.schema.json +164 -0
- package/src/gdskills/bundled/skills/orchestration/task-implementer/SKILL.codex.md +395 -0
- package/src/gdskills/bundled/skills/orchestration/task-implementer/SKILL.cursor.md +395 -0
- package/src/gdskills/bundled/skills/orchestration/task-implementer/SKILL.md +556 -0
- package/src/gdskills/bundled/skills/orchestration/task-implementer/SKILL.opencode.md +395 -0
- package/src/gdskills/bundled/skills/orchestration/task-implementer/SKILL.zed.md +395 -0
- package/src/gdskills/bundled/skills/orchestration/task-implementer/input-contract.schema.json +204 -0
- package/src/gdskills/bundled/skills/orchestration/task-implementer/orchestrator-prompt.md +206 -0
- package/src/gdskills/bundled/skills/orchestration/task-implementer/output-contract.schema.json +51 -0
- package/src/gdskills/bundled/skills/orchestration/task-implementer/task-request.template.md +111 -0
- package/src/gdskills/bundled/skills/planning/autodoc-analyst/SKILL.md +163 -0
- package/src/gdskills/bundled/skills/planning/autodoc-architect/SKILL.md +161 -0
- package/src/gdskills/bundled/skills/planning/autodoc-assembler/SKILL.md +128 -0
- package/src/gdskills/bundled/skills/planning/autodoc-orchestrator/SKILL.md +321 -0
- package/src/gdskills/bundled/skills/planning/autodoc-scanner/SKILL.md +166 -0
- package/src/gdskills/bundled/skills/planning/autodoc-writer/SKILL.md +253 -0
- package/src/gdskills/bundled/skills/planning/brainstorm/SKILL.claude.md +46 -0
- package/src/gdskills/bundled/skills/planning/brainstorm/SKILL.codex.md +90 -0
- package/src/gdskills/bundled/skills/planning/brainstorm/SKILL.cursor.md +90 -0
- package/src/gdskills/bundled/skills/planning/brainstorm/SKILL.md +90 -0
- package/src/gdskills/bundled/skills/planning/consistency-checker/SKILL.codex.md +33 -0
- package/src/gdskills/bundled/skills/planning/consistency-checker/SKILL.cursor.md +33 -0
- package/src/gdskills/bundled/skills/planning/consistency-checker/SKILL.md +190 -0
- package/src/gdskills/bundled/skills/planning/docpack-orchestrator/SKILL.md +142 -0
- package/src/gdskills/bundled/skills/planning/docpack-orchestrator/input-contract.schema.json +31 -0
- package/src/gdskills/bundled/skills/planning/docpack-orchestrator/output-contract.schema.json +31 -0
- package/src/gdskills/bundled/skills/planning/docpack-review/SKILL.md +80 -0
- package/src/gdskills/bundled/skills/planning/docpack-review/input-contract.schema.json +20 -0
- package/src/gdskills/bundled/skills/planning/docpack-review/output-contract.schema.json +36 -0
- package/src/gdskills/bundled/skills/planning/interview/SKILL.codex.md +181 -0
- package/src/gdskills/bundled/skills/planning/interview/SKILL.cursor.md +181 -0
- package/src/gdskills/bundled/skills/planning/interview/SKILL.md +187 -0
- package/src/gdskills/bundled/skills/planning/interviewer/SKILL.claude.md +94 -0
- package/src/gdskills/bundled/skills/planning/interviewer/SKILL.codex.md +99 -0
- package/src/gdskills/bundled/skills/planning/interviewer/SKILL.cursor.md +99 -0
- package/src/gdskills/bundled/skills/planning/interviewer/SKILL.md +105 -0
- package/src/gdskills/bundled/skills/planning/patterns-researcher/SKILL.codex.md +33 -0
- package/src/gdskills/bundled/skills/planning/patterns-researcher/SKILL.cursor.md +33 -0
- package/src/gdskills/bundled/skills/planning/patterns-researcher/SKILL.md +237 -0
- package/src/gdskills/bundled/skills/planning/planner/SKILL.codex.md +33 -0
- package/src/gdskills/bundled/skills/planning/planner/SKILL.cursor.md +33 -0
- package/src/gdskills/bundled/skills/planning/planner/SKILL.md +190 -0
- package/src/gdskills/bundled/skills/planning/prd-creator/SKILL.codex.md +193 -0
- package/src/gdskills/bundled/skills/planning/prd-creator/SKILL.cursor.md +193 -0
- package/src/gdskills/bundled/skills/planning/prd-creator/SKILL.md +193 -0
- package/src/gdskills/bundled/skills/planning/prd-creator/SKILL.opencode.md +193 -0
- package/src/gdskills/bundled/skills/planning/prd-creator/SKILL.zed.md +193 -0
- package/src/gdskills/bundled/skills/planning/prd-creator/input-contract.schema.json +63 -0
- package/src/gdskills/bundled/skills/planning/prd-creator/output-contract.schema.json +175 -0
- package/src/gdskills/bundled/skills/planning/problem-definer/SKILL.codex.md +31 -0
- package/src/gdskills/bundled/skills/planning/problem-definer/SKILL.cursor.md +31 -0
- package/src/gdskills/bundled/skills/planning/problem-definer/SKILL.md +153 -0
- package/src/gdskills/bundled/skills/planning/project-discovery/SKILL.codex.md +32 -0
- package/src/gdskills/bundled/skills/planning/project-discovery/SKILL.cursor.md +32 -0
- package/src/gdskills/bundled/skills/planning/project-discovery/SKILL.md +166 -0
- package/src/gdskills/bundled/skills/planning/spec-writer/SKILL.codex.md +44 -0
- package/src/gdskills/bundled/skills/planning/spec-writer/SKILL.cursor.md +44 -0
- package/src/gdskills/bundled/skills/planning/spec-writer/SKILL.md +243 -0
- package/src/gdskills/bundled/skills/planning/stack-advisor/SKILL.codex.md +43 -0
- package/src/gdskills/bundled/skills/planning/stack-advisor/SKILL.cursor.md +43 -0
- package/src/gdskills/bundled/skills/planning/stack-advisor/SKILL.md +193 -0
- package/src/gdskills/bundled/skills/platform/agent-entrypoint-distiller/SKILL.md +47 -0
- package/src/gdskills/bundled/skills/platform/claude-md-management/SKILL.codex.md +87 -0
- package/src/gdskills/bundled/skills/platform/claude-md-management/SKILL.cursor.md +87 -0
- package/src/gdskills/bundled/skills/platform/claude-md-management/SKILL.md +87 -0
- package/src/gdskills/bundled/skills/platform/hookify/SKILL.codex.md +100 -0
- package/src/gdskills/bundled/skills/platform/hookify/SKILL.cursor.md +100 -0
- package/src/gdskills/bundled/skills/platform/hookify/SKILL.md +100 -0
- package/src/gdskills/bundled/skills/quality/changelog/SKILL.claude.md +45 -0
- package/src/gdskills/bundled/skills/quality/changelog/SKILL.codex.md +84 -0
- package/src/gdskills/bundled/skills/quality/changelog/SKILL.cursor.md +84 -0
- package/src/gdskills/bundled/skills/quality/changelog/SKILL.md +84 -0
- package/src/gdskills/bundled/skills/quality/commit/SKILL.codex.md +66 -0
- package/src/gdskills/bundled/skills/quality/commit/SKILL.cursor.md +66 -0
- package/src/gdskills/bundled/skills/quality/commit/SKILL.md +66 -0
- package/src/gdskills/bundled/skills/quality/db-migrate/SKILL.claude.md +40 -0
- package/src/gdskills/bundled/skills/quality/db-migrate/SKILL.codex.md +66 -0
- package/src/gdskills/bundled/skills/quality/db-migrate/SKILL.cursor.md +66 -0
- package/src/gdskills/bundled/skills/quality/db-migrate/SKILL.md +66 -0
- package/src/gdskills/bundled/skills/quality/dependency-update/SKILL.claude.md +45 -0
- package/src/gdskills/bundled/skills/quality/dependency-update/SKILL.codex.md +81 -0
- package/src/gdskills/bundled/skills/quality/dependency-update/SKILL.cursor.md +81 -0
- package/src/gdskills/bundled/skills/quality/dependency-update/SKILL.md +81 -0
- package/src/gdskills/bundled/skills/quality/deploy/SKILL.claude.md +42 -0
- package/src/gdskills/bundled/skills/quality/deploy/SKILL.codex.md +70 -0
- package/src/gdskills/bundled/skills/quality/deploy/SKILL.cursor.md +70 -0
- package/src/gdskills/bundled/skills/quality/deploy/SKILL.md +70 -0
- package/src/gdskills/bundled/skills/quality/metaproject-security/SKILL.md +103 -0
- package/src/gdskills/bundled/skills/quality/perf-check/SKILL.claude.md +48 -0
- package/src/gdskills/bundled/skills/quality/perf-check/SKILL.codex.md +83 -0
- package/src/gdskills/bundled/skills/quality/perf-check/SKILL.cursor.md +83 -0
- package/src/gdskills/bundled/skills/quality/perf-check/SKILL.md +83 -0
- package/src/gdskills/bundled/skills/quality/pr/SKILL.codex.md +75 -0
- package/src/gdskills/bundled/skills/quality/pr/SKILL.cursor.md +75 -0
- package/src/gdskills/bundled/skills/quality/pr/SKILL.md +75 -0
- package/src/gdskills/bundled/skills/quality/pr-issue-documenter/SKILL.codex.md +364 -0
- package/src/gdskills/bundled/skills/quality/pr-issue-documenter/SKILL.cursor.md +295 -0
- package/src/gdskills/bundled/skills/quality/pr-issue-documenter/SKILL.md +378 -0
- package/src/gdskills/bundled/skills/quality/pr-issue-documenter/SKILL.opencode.md +364 -0
- package/src/gdskills/bundled/skills/quality/pr-issue-documenter/SKILL.zed.md +38 -0
- package/src/gdskills/bundled/skills/quality/pr-issue-documenter/input-contract.schema.json +53 -0
- package/src/gdskills/bundled/skills/quality/pr-issue-documenter/output-contract.schema.json +46 -0
- package/src/gdskills/bundled/skills/quality/push/SKILL.codex.md +52 -0
- package/src/gdskills/bundled/skills/quality/push/SKILL.cursor.md +52 -0
- package/src/gdskills/bundled/skills/quality/push/SKILL.md +52 -0
- package/src/gdskills/bundled/skills/quality/security-audit/SKILL.claude.md +40 -0
- package/src/gdskills/bundled/skills/quality/security-audit/SKILL.codex.md +61 -0
- package/src/gdskills/bundled/skills/quality/security-audit/SKILL.cursor.md +61 -0
- package/src/gdskills/bundled/skills/quality/security-audit/SKILL.md +61 -0
- package/src/gdskills/bundled/skills/quality/test-gen/SKILL.claude.md +30 -0
- package/src/gdskills/bundled/skills/quality/test-gen/SKILL.codex.md +75 -0
- package/src/gdskills/bundled/skills/quality/test-gen/SKILL.cursor.md +75 -0
- package/src/gdskills/bundled/skills/quality/test-gen/SKILL.md +75 -0
- package/src/gdskills/bundled/skills/quality/tests-creator/SKILL.codex.md +64 -0
- package/src/gdskills/bundled/skills/quality/tests-creator/SKILL.cursor.md +74 -0
- package/src/gdskills/bundled/skills/quality/tests-creator/SKILL.md +339 -0
- package/src/gdskills/bundled/skills/quality/tests-creator/SKILL.opencode.md +48 -0
- package/src/gdskills/bundled/skills/quality/tests-creator/SKILL.zed.md +44 -0
- package/src/gdskills/bundled/skills/quality/tests-creator/input-contract.schema.json +121 -0
- package/src/gdskills/bundled/skills/quality/tests-creator/output-contract.schema.json +127 -0
- package/src/gdskills/bundled/skills/review/code-ai-review/SKILL.codex.md +204 -0
- package/src/gdskills/bundled/skills/review/code-ai-review/SKILL.cursor.md +204 -0
- package/src/gdskills/bundled/skills/review/code-ai-review/SKILL.md +203 -0
- package/src/gdskills/bundled/skills/review/code-ai-review/SKILL.opencode.md +204 -0
- package/src/gdskills/bundled/skills/review/code-ai-review/SKILL.zed.md +204 -0
- package/src/gdskills/bundled/skills/review/code-b091-review/SKILL.codex.md +209 -0
- package/src/gdskills/bundled/skills/review/code-b091-review/SKILL.cursor.md +209 -0
- package/src/gdskills/bundled/skills/review/code-b091-review/SKILL.md +208 -0
- package/src/gdskills/bundled/skills/review/code-b091-review/SKILL.opencode.md +209 -0
- package/src/gdskills/bundled/skills/review/code-b091-review/SKILL.zed.md +209 -0
- package/src/gdskills/bundled/skills/review/code-mobx-store-review/SKILL.codex.md +263 -0
- package/src/gdskills/bundled/skills/review/code-mobx-store-review/SKILL.cursor.md +263 -0
- package/src/gdskills/bundled/skills/review/code-mobx-store-review/SKILL.md +258 -0
- package/src/gdskills/bundled/skills/review/code-mobx-store-review/SKILL.opencode.md +263 -0
- package/src/gdskills/bundled/skills/review/code-mobx-store-review/SKILL.zed.md +263 -0
- package/src/gdskills/bundled/skills/review/code-style-review/SKILL.codex.md +175 -0
- package/src/gdskills/bundled/skills/review/code-style-review/SKILL.cursor.md +175 -0
- package/src/gdskills/bundled/skills/review/code-style-review/SKILL.md +168 -0
- package/src/gdskills/bundled/skills/review/code-style-review/SKILL.opencode.md +175 -0
- package/src/gdskills/bundled/skills/review/code-style-review/SKILL.zed.md +175 -0
- package/src/gdskills/bundled/skills/review/review-architecture/SKILL.md +360 -0
- package/src/gdskills/bundled/skills/review/review-backend/SKILL.md +337 -0
- package/src/gdskills/bundled/skills/review/review-clean-code/SKILL.md +477 -0
- package/src/gdskills/bundled/skills/review/review-core-boundaries/SKILL.md +93 -0
- package/src/gdskills/bundled/skills/review/review-flow-graph/SKILL.md +119 -0
- package/src/gdskills/bundled/skills/review/review-frontend/SKILL.md +595 -0
- package/src/gdskills/bundled/skills/review/review-frontend-conventions/SKILL.md +144 -0
- package/src/gdskills/bundled/skills/review/review-highload/SKILL.md +519 -0
- package/src/gdskills/bundled/skills/review/review-logic/SKILL.md +323 -0
- package/src/gdskills/bundled/skills/review/review-orchestrator/SKILL.md +927 -0
- package/src/gdskills/bundled/skills/review/review-orchestrator/input-contract.schema.json +153 -0
- package/src/gdskills/bundled/skills/review/review-orchestrator/output-contract.schema.json +77 -0
- package/src/gdskills/bundled/skills/review/review-orchestrator/review-context.schema.json +389 -0
- package/src/gdskills/bundled/skills/review/review-orchestrator/reviewer-finding.schema.json +189 -0
- package/src/gdskills/bundled/skills/review/review-orchestrator/reviewer-input.schema.json +241 -0
- package/src/gdskills/bundled/skills/review/review-performance/SKILL.md +344 -0
- package/src/gdskills/bundled/skills/review/review-pr-feedback/SKILL.md +327 -0
- package/src/gdskills/bundled/skills/review/review-security-code/SKILL.md +348 -0
- package/src/gdskills/bundled/skills/review/review-strict/SKILL.md +328 -0
- package/src/gdskills/bundled/skills/review/review-style/SKILL.md +343 -0
- package/src/gdskills/bundled/skills/review/review-testing-practices/SKILL.md +134 -0
- package/src/gdskills/bundled/skills/shared/git-merge-base.md +33 -0
- package/src/gdskills/contracts/agent-event.schema.json +32 -0
- package/src/gdskills/contracts/orchestrator-state.schema.json +58 -0
- package/src/gdskills/contracts/review-finding.schema.json +59 -0
- package/src/gdskills/contracts/subagent-dispatch.schema.json +123 -0
- package/src/gdskills/contracts/subagent-result.schema.json +136 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 MrCipherSmith
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,351 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<img src="docs/assets/keryx-logo.png" alt="keryx" width="440">
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
|
+
<h1 align="center">keryx</h1>
|
|
6
|
+
|
|
7
|
+
<p align="center"><strong>One project-local brain for your AI agents and your team.</strong></p>
|
|
8
|
+
|
|
9
|
+
<p align="center">
|
|
10
|
+
<a href="https://github.com/MrCipherSmith/keryx/actions/workflows/ci.yml"><img src="https://github.com/MrCipherSmith/keryx/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
|
|
11
|
+
<a href="LICENSE"><img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT"></a>
|
|
12
|
+
<a href="package.json"><img src="https://img.shields.io/badge/version-0.2.0-blue.svg" alt="Version"></a>
|
|
13
|
+
</p>
|
|
14
|
+
|
|
15
|
+
`keryx` is a CLI that installs a small `.metaproject/` workspace into any codebase, giving AI agents and developers one shared, versioned source of context: a code graph, an architecture wiki, normalized health and test reports, long-term memory, and agent skills. Instead of context scattered across scratchpads, CI logs, and IDE rule files that never agree, everything lives in one git-diffable place that both humans and agents read from.
|
|
16
|
+
|
|
17
|
+
The core is deterministic, local, and offline — with zero runtime dependencies. Every model-backed or precision feature is strictly opt-in, so a fresh install behaves identically whether or not you enable them.
|
|
18
|
+
|
|
19
|
+
> **Model assets are optional.** Tree-sitter parsing uses downloadable grammars
|
|
20
|
+
> that are **not bundled and not required**; when a grammar is absent, the graph
|
|
21
|
+
> falls back to its deterministic resolver.
|
|
22
|
+
>
|
|
23
|
+
> **Two model-backed features are off in a way a download will not fix.**
|
|
24
|
+
> Semantic memory search and the ML security detectors have no runtime shipped —
|
|
25
|
+
> the ONNX stack was removed for weight, so their runtime identifiers are empty
|
|
26
|
+
> strings (`src/security/detect/index.ts`, `src/memory/config.ts`). Re-enabling
|
|
27
|
+
> them means editing those constants and installing a transformers.js-API
|
|
28
|
+
> package, not supplying an asset. Both run on their deterministic floor
|
|
29
|
+
> instead: lexical recall, and regex plus entropy.
|
|
30
|
+
|
|
31
|
+
Most things degrade rather than break, but not everything. `keryx ctx rg` exits
|
|
32
|
+
non-zero without `ripgrep` on `PATH` rather than falling back, and the
|
|
33
|
+
model-backed commands — `test suggest`, `flow plan`, `memory reflect --narrate`,
|
|
34
|
+
`health explain --narrate` — have no deterministic mode and exit non-zero
|
|
35
|
+
without a credential. `wiki enrich` is the exception that degrades: it exits 0
|
|
36
|
+
and marks pages skipped.
|
|
37
|
+
|
|
38
|
+
## What this removes
|
|
39
|
+
|
|
40
|
+
An agent starts every task by re-deriving what your repository already knows.
|
|
41
|
+
Which files relate to which. What the architecture decision was and why. Which
|
|
42
|
+
tests cover the thing being changed. What broke last time someone tried this.
|
|
43
|
+
That work is repeated per task, per agent, per person — and the answers land in
|
|
44
|
+
scratchpads, CI logs and IDE rule files that never agree with each other.
|
|
45
|
+
|
|
46
|
+
keryx materializes those answers **into the repository**, as Markdown and JSON
|
|
47
|
+
under `.metaproject/`, and points every agent at one index. The context is
|
|
48
|
+
versioned with the code, readable in a diff, and shared by the humans and the
|
|
49
|
+
agents alike.
|
|
50
|
+
|
|
51
|
+
### What it looks like when it works
|
|
52
|
+
|
|
53
|
+
Real output, from a real run on [express](https://github.com/expressjs/express)
|
|
54
|
+
— cloned fresh, four commands, nothing edited:
|
|
55
|
+
|
|
56
|
+
```console
|
|
57
|
+
$ keryx init --yes
|
|
58
|
+
✓ gdgraph ✓ gdctx ✓ gdwiki ✓ gdskills
|
|
59
|
+
✓ health ✓ testing ✓ memory ✓ tasks ✓ security
|
|
60
|
+
|
|
61
|
+
$ keryx gdgraph build
|
|
62
|
+
gdgraph build complete: 139 nodes, 153 edges
|
|
63
|
+
|
|
64
|
+
$ keryx gdgraph query cycles
|
|
65
|
+
No cycles found.
|
|
66
|
+
|
|
67
|
+
$ keryx gdgraph affected lib/express.js
|
|
68
|
+
# Affected context for lib/express.js
|
|
69
|
+
|
|
70
|
+
## Dependencies
|
|
71
|
+
- lib/application.js
|
|
72
|
+
- lib/request.js
|
|
73
|
+
- lib/response.js
|
|
74
|
+
|
|
75
|
+
## Dependents
|
|
76
|
+
- examples/route-map/index.js
|
|
77
|
+
- examples/route-middleware/index.js
|
|
78
|
+
- index.js
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
That last answer — *what breaks if I change this* — is the one an agent
|
|
82
|
+
otherwise spends a dozen file reads guessing at, and gets wrong on the files
|
|
83
|
+
that matter most.
|
|
84
|
+
|
|
85
|
+
### Is this for you?
|
|
86
|
+
|
|
87
|
+
**Probably not, if:**
|
|
88
|
+
|
|
89
|
+
- **you want a hosted service.** There is no server, no account, no dashboard in
|
|
90
|
+
the cloud. If nothing runs on your machine, nothing runs.
|
|
91
|
+
- **you are on Linux and need the network allowlist.** The domain allowlist,
|
|
92
|
+
credential masking and TLS termination are macOS-only and **refuse** to run on
|
|
93
|
+
Linux rather than quietly doing less. Filesystem containment and network
|
|
94
|
+
on/off work on both.
|
|
95
|
+
- **you need remote approvals today.** `keryx serve` exists, but a turn whose
|
|
96
|
+
policy decision is `ask` terminates in a recorded denial. Approvals are not
|
|
97
|
+
implemented yet.
|
|
98
|
+
- **you want it to think for you.** keryx does deterministic mechanics — scan,
|
|
99
|
+
graph, score, checksum. The judgement stays with the agent and with you.
|
|
100
|
+
|
|
101
|
+
**Probably yes, if** you run agents against a repository you care about, more
|
|
102
|
+
than once, and you have noticed them rediscovering the same things.
|
|
103
|
+
|
|
104
|
+
## Quick Start
|
|
105
|
+
|
|
106
|
+
**Requirements:** `git` and `bun` (>= 1.1.0). Code search (`keryx ctx rg` and the
|
|
107
|
+
agent's `search_code` tool) additionally requires [ripgrep](https://github.com/BurntSushi/ripgrep)
|
|
108
|
+
(`rg`) on `PATH` — install it with `brew install ripgrep` (macOS) or `apt install ripgrep`
|
|
109
|
+
(Debian/Ubuntu). Without it, code search is unavailable and the harness falls back to
|
|
110
|
+
reading files directly.
|
|
111
|
+
|
|
112
|
+
### Install / update (global)
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
npm install -g @mrciphersmith/keryx
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
> **The package is scoped, and the scope matters.** The unscoped name `keryx` on
|
|
119
|
+
> npm belongs to [an unrelated project](https://github.com/actionhero/keryx) —
|
|
120
|
+
> `npm install -g keryx` installs a different program. The executable this
|
|
121
|
+
> package installs is still called `keryx`.
|
|
122
|
+
|
|
123
|
+
Or use the managed installer, which lays out `~/.keryx/keryx` with a wrapper at
|
|
124
|
+
`~/.local/bin/keryx`. Re-run either command to upgrade.
|
|
125
|
+
|
|
126
|
+
```bash
|
|
127
|
+
# curl (short)
|
|
128
|
+
curl -fsSL https://raw.githubusercontent.com/MrCipherSmith/keryx/main/install | bash
|
|
129
|
+
|
|
130
|
+
# bun (short) — pipe into bun (Bun cannot run remote https://…/file.ts as entrypoint)
|
|
131
|
+
curl -fsSL https://raw.githubusercontent.com/MrCipherSmith/keryx/main/install.ts | bun -
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
Pure Bun without the `curl` binary:
|
|
135
|
+
|
|
136
|
+
```bash
|
|
137
|
+
bun -e 'await Bun.spawn(["bash","-s"],{stdin:await fetch("https://raw.githubusercontent.com/MrCipherSmith/keryx/main/install"),stdout:"inherit",stderr:"inherit"}).exited'
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
Both paths run `scripts/install.sh --global` under the hood. Ensure `~/.local/bin` is on `PATH`:
|
|
141
|
+
|
|
142
|
+
```bash
|
|
143
|
+
export PATH="$HOME/.local/bin:$PATH"
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
### Interactive shell (TUI agent harness)
|
|
147
|
+
|
|
148
|
+
Bare `keryx` is the **CLI** (lists commands / usage). The interactive TUI agent
|
|
149
|
+
harness starts only with **`keryx shell`**:
|
|
150
|
+
|
|
151
|
+
```bash
|
|
152
|
+
keryx # CLI help — metaproject commands
|
|
153
|
+
keryx shell # OpenTUI + agent harness (default UI)
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
Useful `shell` flags:
|
|
157
|
+
|
|
158
|
+
| Flag | Effect |
|
|
159
|
+
|------|--------|
|
|
160
|
+
| *(default)* | TUI + agent |
|
|
161
|
+
| `--no-tui` | classic readline shell |
|
|
162
|
+
| `--chat` | chat without tools (readline) |
|
|
163
|
+
| `--agent` | agent mode explicitly |
|
|
164
|
+
| `--provider <p> --model <m>` | skip the provider/model picker |
|
|
165
|
+
| `--base-url <url>` | custom provider endpoint |
|
|
166
|
+
|
|
167
|
+
Examples:
|
|
168
|
+
|
|
169
|
+
```bash
|
|
170
|
+
keryx shell --provider ollama --model llama3.1:latest
|
|
171
|
+
keryx shell --no-tui
|
|
172
|
+
keryx shell --chat
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
### First project setup
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
cd path/to/your-project
|
|
179
|
+
keryx init
|
|
180
|
+
|
|
181
|
+
keryx gdgraph build # code dependency graph
|
|
182
|
+
keryx test analyze # testing context report
|
|
183
|
+
keryx health run --changed # normalized health report
|
|
184
|
+
|
|
185
|
+
keryx dash # human admin dashboard
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
`keryx init` creates a `.metaproject/` workspace and connects your existing
|
|
189
|
+
`AGENTS.md` / `CLAUDE.md` entrypoints to it, so agents are routed to the right
|
|
190
|
+
module automatically. See the
|
|
191
|
+
[onboarding guide](docs/docs/onboarding.md) for the full first-run walkthrough
|
|
192
|
+
and alternative install paths (managed curl installer, or project-local).
|
|
193
|
+
|
|
194
|
+
## Core Ideas
|
|
195
|
+
|
|
196
|
+
A few pieces of jargon, defined once:
|
|
197
|
+
|
|
198
|
+
- **gdgraph** — a *code graph*: language-aware dependency and import graph of your
|
|
199
|
+
repo (TypeScript/JavaScript, Java via Maven/Gradle, and Python), with
|
|
200
|
+
cycle/orphan queries, concept and symbol lookup, call-aware impact analysis,
|
|
201
|
+
shortest paths, and a PageRank-ranked repo map.
|
|
202
|
+
- **gdctx** — *compact context output*: runs commands, searches, and file reads
|
|
203
|
+
and stores condensed results so agents don't flood their context with raw logs.
|
|
204
|
+
- **gdwiki** — an *architecture wiki*: a Markdown knowledge base of domain
|
|
205
|
+
models, decisions, and flows, with grounded `wiki ask` retrieval, hierarchical
|
|
206
|
+
indexes, and backlinks between wiki pages and code.
|
|
207
|
+
- **gdskills** — *agent skills*: bundled and project-generated skills that route
|
|
208
|
+
agents to the right workflow, plus verification and export to different runtimes.
|
|
209
|
+
|
|
210
|
+
## Modules
|
|
211
|
+
|
|
212
|
+
`keryx` itself is the toolkit core (`init`, `status`, `update`, `dashboard`,
|
|
213
|
+
`rules`, `standard`, `agents`) and manages the `.metaproject/` structure. It
|
|
214
|
+
ships these modules:
|
|
215
|
+
|
|
216
|
+
- **gdgraph** — code dependency graph with language-aware import resolution (TypeScript/JavaScript, Java Maven/Gradle, Python); concept search, file/symbol paths, affected-set blast radius, PageRank repo map, and an optional tree-sitter symbol/call graph.
|
|
217
|
+
- **gdctx** — compact command / search / read output plus opt-in routing guards for supported agent runtimes.
|
|
218
|
+
- **gdwiki** — Markdown project wiki with hierarchical indexes, backlinks, link checks, collection, and grounded retrieval.
|
|
219
|
+
- **gdskills** — bundled and generated agent skills with routing, verification, learning, and export.
|
|
220
|
+
- **health** — normalized code-health reports from TypeScript, tests, audit, complexity, coverage, and lint (optional SonarQube).
|
|
221
|
+
- **testing** — testing context, related-test selection, changed-scope runs, and an opt-in coverage-map Test Impact Analysis.
|
|
222
|
+
- **memory** — long-term Markdown project memory with indexing, lexical search, dedup and bitemporal validity. The embedding seam exists but ships with no runtime — see the note above.
|
|
223
|
+
- **tasks** — an agent-first Task Manager driven by `keryx flow` for issue/task lifecycle tracking.
|
|
224
|
+
- **security** — deterministic secrets / PII / prompt-injection / egress scanning, redaction, and a policy gate at agent write seams.
|
|
225
|
+
- **mcp** — opt-in [Model Context Protocol](https://modelcontextprotocol.io) server exposing read-only module services to agents. A real module, but **off by default** — the nine above are on after `init`, this one is not.
|
|
226
|
+
|
|
227
|
+
`keryx modules` toggles modules by manifest key. Two caveats worth knowing:
|
|
228
|
+
`security` is enabled by default but is **not** in that command's module list, so
|
|
229
|
+
it cannot be toggled there; and toggling any module currently drops an enabled
|
|
230
|
+
`mcp` from the manifest.
|
|
231
|
+
|
|
232
|
+
**`review` and `serve` are commands, not modules.** They have no manifest entry
|
|
233
|
+
and are not toggleable — `keryx review` writes managed review packages under
|
|
234
|
+
`.metaproject/reviews/`, and `keryx serve` is the loopback HTTP entry described
|
|
235
|
+
below. Earlier versions of this README listed them alongside the modules; that
|
|
236
|
+
conflated three different things.
|
|
237
|
+
|
|
238
|
+
Two cross-cutting commands improve agent startup and routing:
|
|
239
|
+
|
|
240
|
+
- `keryx orient` emits or installs a compact graph + wiki orientation block at
|
|
241
|
+
turn start for Claude, Codex, and Cursor.
|
|
242
|
+
- `keryx agents bootstrap` installs the Metaproject discovery rule in supported
|
|
243
|
+
global agent entrypoints.
|
|
244
|
+
|
|
245
|
+
## How Agents Use It
|
|
246
|
+
|
|
247
|
+
After `init`, agents follow the root `AGENTS.md`/`CLAUDE.md` pointer to
|
|
248
|
+
`.metaproject/index.md`, which routes them to the right module. For example:
|
|
249
|
+
|
|
250
|
+
```text
|
|
251
|
+
Find the files related to payment retry handling, explain the relationships,
|
|
252
|
+
and use the keryx tools for context discovery before broad raw search.
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
The agent is directed to use `gdgraph` for navigation, `gdctx` for large output,
|
|
256
|
+
`gdwiki` and `memory` for decisions and history, and `flow` for managed work —
|
|
257
|
+
only for the modules you've enabled.
|
|
258
|
+
|
|
259
|
+
For an always-current starting map, install the optional orientation hook:
|
|
260
|
+
|
|
261
|
+
```bash
|
|
262
|
+
keryx orient install-hook --runtime codex
|
|
263
|
+
```
|
|
264
|
+
|
|
265
|
+
For traceable review work, create a standalone review package or attach one to
|
|
266
|
+
an existing flow:
|
|
267
|
+
|
|
268
|
+
```bash
|
|
269
|
+
keryx review start --target branch --ref feature/example
|
|
270
|
+
keryx review attach --flow 001 --target pull-request --ref 42
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
For agents that speak the Model Context Protocol, `keryx mcp install` wires a
|
|
274
|
+
read-only MCP server into Cursor or Claude in one command (opt-in, off by
|
|
275
|
+
default). See the [architecture doc](docs/docs/architecture.md) for the module
|
|
276
|
+
data flows.
|
|
277
|
+
|
|
278
|
+
## Remote Entry (opt-in, off by default)
|
|
279
|
+
|
|
280
|
+
`keryx serve` is a second door into the same agent harness `keryx shell` uses —
|
|
281
|
+
a loopback-bound HTTP listener, so a Telegram bot or a browser workspace can
|
|
282
|
+
drive a run without a second agent runtime or a second owner of session state.
|
|
283
|
+
|
|
284
|
+
```bash
|
|
285
|
+
keryx serve config init # write the listener config
|
|
286
|
+
keryx serve token issue # print a bearer token (only a salted hash is stored)
|
|
287
|
+
keryx serve # bind 127.0.0.1 and listen
|
|
288
|
+
keryx serve status --json # configuration state
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
It is **off unless you configure it**, binds loopback unless you pass
|
|
292
|
+
`--acknowledge-non-loopback`, and authenticates *before* routing — so an
|
|
293
|
+
unauthenticated caller cannot tell a known path from an unknown one. Routes
|
|
294
|
+
today: `GET /v1/status`, `GET /v1/projects`, `POST /v1/turns` with
|
|
295
|
+
per-project idempotency keys, and `GET /v1/turns/<id>` for the durable record
|
|
296
|
+
and its server-sent-event stream.
|
|
297
|
+
|
|
298
|
+
Two boundaries worth knowing before you point anything at it:
|
|
299
|
+
|
|
300
|
+
- **The remote policy profile may never be weaker than the local one**; it is
|
|
301
|
+
compared on every turn, and a weaker profile is refused rather than accepted.
|
|
302
|
+
- **Approvals are not implemented yet.** A turn whose policy decision is `ask`
|
|
303
|
+
terminates in a *recorded denial* — it is never auto-approved.
|
|
304
|
+
|
|
305
|
+
`keryx projects` manages the user-global registry these routes address projects
|
|
306
|
+
by; `keryx init` registers a project into it.
|
|
307
|
+
|
|
308
|
+
## CI Integration
|
|
309
|
+
|
|
310
|
+
`keryx` is designed so CI can publish normalized, committable artifacts that
|
|
311
|
+
humans and agents read later:
|
|
312
|
+
|
|
313
|
+
```bash
|
|
314
|
+
keryx gdgraph build
|
|
315
|
+
keryx test analyze
|
|
316
|
+
keryx health run --changed
|
|
317
|
+
keryx dashboard build
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
Use `keryx health gate --strict-warn` to fail a job on the normalized health
|
|
321
|
+
gate instead of parsing raw linter/test logs, and `keryx security eval --corpus
|
|
322
|
+
all` to fail on any detector breaching its committed false-negative threshold.
|
|
323
|
+
|
|
324
|
+
## Documentation
|
|
325
|
+
|
|
326
|
+
Full developer documentation — reverse-engineered from the source — lives under
|
|
327
|
+
[docs/docs/](docs/docs/):
|
|
328
|
+
|
|
329
|
+
- **[Onboarding](docs/docs/onboarding.md)** — install paths, first-run walkthrough, the build loop.
|
|
330
|
+
- **[Architecture](docs/docs/architecture.md)** — the four-layer pattern, invariants, cross-module data flows.
|
|
331
|
+
- **[Module reference](docs/docs/modules.md)** — one section per module: purpose, CLI surface, mechanics, data paths.
|
|
332
|
+
- **[CLI reference](docs/docs/cli-reference.md)** — every command, subcommand, and flag.
|
|
333
|
+
- **[Workspace & lifecycle](docs/docs/workspace-and-lifecycle.md)** — the `.metaproject/` contract and `init`/`update` lifecycle.
|
|
334
|
+
|
|
335
|
+
- **[Changelog](CHANGELOG.md)** — what has landed since `v0.1.0`, including a
|
|
336
|
+
standing list of known gaps.
|
|
337
|
+
|
|
338
|
+
Run `keryx <command> --help` (or `keryx` with no arguments) for the live command
|
|
339
|
+
surface.
|
|
340
|
+
|
|
341
|
+
## Local Development
|
|
342
|
+
|
|
343
|
+
```bash
|
|
344
|
+
bun ./src/cli.ts init
|
|
345
|
+
bun ./src/cli.ts status
|
|
346
|
+
bun run check # typecheck + tests
|
|
347
|
+
```
|
|
348
|
+
|
|
349
|
+
## License
|
|
350
|
+
|
|
351
|
+
MIT. See [LICENSE](LICENSE).
|