by osovv
GRACE (Graph-RAG Anchored Code Engineering): open Agent Skills for contract-driven AI code generation with semantic markup, knowledge graphs, and support for Claude Code, Codex CLI, and Kilo Code.
# Add to your Claude Code skills
git clone https://github.com/osovv/grace-marketplaceGRACE means Graph-RAG Anchored Code Engineering: a contract-first AI engineering methodology built around semantic markup, shared XML artifacts, verification planning, and knowledge-graph navigation.
This repository ships the GRACE skills plus the optional grace CLI. It is a packaging and distribution repository, not an end-user application.
Current packaged version: 3.7.0
skills/grace/*plugins/grace/skills/grace/*.claude-plugin/marketplace.jsonplugins/grace/.claude-plugin/plugin.jsonopenpackage.yml@osovv/grace-cliThe published CLI currently gives you:
grace lint for integrity checksgrace module find for module resolution across shared docs and file-local markupgrace module show for shared/public module contextgrace file show for file-local/private implementation contextGRACE is designed for AI-assisted engineering where agents need stable navigation, explicit contracts, and reusable verification evidence.
Core ideas:
This makes it easier to:
GRACE was designed by Vladimir Ivanov (@turboplanner).
Install skills first.
Skills and CLI are complementary, but they are distributed differently.
opkg install gh@osovv/grace-marketplace
opkg install gh@osovv/grace-marketplace -g
opkg install gh@osovv/grace-marketplace --platforms claude-code
/plugin marketplace add osovv/grace-marketplace
/plugin install grace@grace-marketplace
git clone https://github.com/osovv/grace-marketplace
cp -r grace-marketplace/skills/grace/grace-* /path/to/your/agent/skills/
The CLI is a companion to the GRACE skills, not a replacement for them.
Requires bun on PATH.
bun add -g @osovv/grace-cli
grace lint --path /path/to/grace-project
For a new GRACE project:
$grace-initdocs/requirements.xml and docs/technology.xml together with your agent$grace-plan$grace-verification$grace-execute or $grace-multiagent-executeFor an existing GRACE project, the CLI is often the fastest way to orient yourself:
# Integrity gate
grace lint --path /path/to/project
# Resolve the relevant module
grace module find auth --path /path/to/project
grace module find src/provider/config-repo.ts --path /path/to/project --json
# Read shared/public context
grace module show M-AUTH --path /path/to/project
grace module show M-AUTH --path /path/to/project --with verification
# Read file-local/private context
grace file show src/auth/index.ts --path /path/to/project
grace file show src/auth/index.ts --path /path/to/project --contracts --blocks
| Skill | Purpose |
| --- | --- |
| grace-init | Bootstrap the GRACE docs, templates, and agent guidance |
| grace-plan | Design modules, phases, flows, dependencies, and contracts |
| grace-verification | Build and maintain verification-plan.xml, tests, traces, and log evidence |
| grace-execute | Execute the plan sequentially with scoped review and commits |
| grace-multiagent-execute | Execute parallel-safe waves with controller-managed synchronization |
| grace-refactor | Rename, move, split, merge, and extract modules without shared-artifact drift |
| grace-fix | Debug issues from graph, contracts, tests, traces, and semantic blocks |
| grace-refresh | Refresh graph and verification artifacts against the real codebase |
| grace-reviewer | Review semantic integrity, graph consistency, and verification quality |
| grace-status | Report overall project health and suggest the next safe action |
| grace-ask | Answer architecture and implementation questions from project artifacts |
| grace-cli | Use the optional grace binary as a fast lint and artifact-query layer for GRACE projects |
| grace-explainer | Explain the GRACE methodology itself |
| grace-setup-subagents | Scaffold shell-specific GRACE worker and reviewer presets |
| Command | What It Does |
| --- | --- |
| grace lint --path <root> | Validate current GRACE artifacts, semantic markup, unique XML tags, and export/map drift |
| grace module find <query> --path <root> | Search by module ID, name, path, purpose, annotations, dependency IDs, verification IDs, and LINKS |
| grace module show <id-or-path> --path <root> | Show the shared/public module record from plan, graph, steps, and linked files |
| grace module show <id> --with verification --path <root> | Include verification excerpt when a V-M-* entry exists |
| grace file show <path> --path <root> | Show file-local MODULE_CONTRACT, MODULE_MAP, and CHANGE_SUMMARY |
| grace file show <path> --contracts --blocks --path <root> | Include scoped contracts and semantic block navigation |
Current output modes:
grace lint: text, jsongrace module find: table, jsongrace module show: text, jsongrace file show: text, jsonGRACE works best when shared docs stay public and stable, while private detail stays close to code.
Use shared XML artifacts for:
Use file-local markup for:
MODULE_CONTRACTMODULE_MAPCHANGE_SUMMARYRule of thumb:
grace module show is the shared/public truthgrace file show is the file-local/private truth| Artifact | Role |
| --- | --- |
| docs/requirements.xml | Product intent, scope, use cases, and requirements |
| docs/technology.xml | Stack, tooling, constraints, runtime, and testing choices |
| docs/development-plan.xml | Modules, contracts, implementation order, phases, and flows |
| docs/verification-plan.xml | Verification entries, test commands, scenarios, and required markers |
| docs/knowledge-graph.xml | Module map, dependencies, public annotations, and navigation graph |
| docs/operational-packets.xml | Canonical execution packet, delta, and failure handoff templates |
| src/**/* and tests/**/* with GRACE markup | File-local module context, contracts, and semantic block boundaries |
$grace-init
design requirements.xml and technology.xml together with your agent
$grace-plan
$grace-verification
$grace-execute or $grace-multiagent-execute
grace module find <name-or-path>
grace module show M-XXX --with verification
grace file show <governed-file> --contracts --blocks
grace lint --path <project-root>
$grace-reviewer
$grace-refresh
grace module find <error-or-path>
grace module show M-XXX --with verification
grace file show <governed-file> --contracts --blocks
$grace-fix
| Path | Purpose |
| --- | --- |
| skills/grace/* | Canonical skill sources |
| plugins/grace/skills/grace/* | Packaged mirror used for marketplace distribution |
| .claude-plugin/marketplace.json | Marketplace entry and published skill set |
| plugins/grace/.claude-plugin/plugin.json | Packaged plugin manifest |
| src/grace.ts | CLI entrypoint |
| src/grace-lint.ts | grace lint command |
| src/grace-module.ts | grace module find/show commands |
| src/grace-file.ts | grace file show command |
| src/query/* | Artifact loader, index, and render layer for CLI queries |
| scripts/validate-marketplace.ts | Packaging and release validation |
skills/grace/* as the source of truth unless the task is explicitly about packaged output.plugins/grace/skills/grace/* synchronized with the canonical skill files.README.md, package.json, openpackage.yml, .claude-plugin/marketplace.json, and plugins/grace/.claude-plugin/plugin.json.bun run ./scripts/validate-marketplace.ts.bun run ./src/grace.ts lint --path . --allow-missing-docs and bun test.skills/grace/ is published; the actual shipped set is declared in .claude-plugin/marketplace.json.Install dependencies:
bun install
Run the test suite:
bun test
Run the CLI against the repository itself:
bun run ./src/grace.ts lint --path . --allow-missing-docs
Run marketplace and packaging validation:
bun run ./scripts/validate-marketplace.ts
Smoke test the qu
No comments yet. Be the first to share your thoughts!