@datacode-ai/coding-kit
v0.6.0
Published
DataCode AI Coding project initializer and delivery workflow kit
Maintainers
Readme
@datacode-ai/coding-kit
DataCode Coding Kit turns a new or existing Git project into a versioned AI Coding workspace. It installs persistent project rules, requirement entry points, a compact project-status index, and deterministic checks without choosing a technology stack or generating business code.
The SDD installer requires Node.js 20 or later and npm 9 or later. It validates both versions before installing the project-pinned Spec Kit runtime and reports the original process error when npm cannot start.
Current scope
DataCode agents should first request the read-only initialization guide:
npx @datacode-ai/coding-kit@latest guide init --mode new --target .The command writes nothing. It returns a versioned JSON protocol containing the
dry-run plan, confirmation rules, and the exact-version command to run only after
the user confirms. DataCode uses an explicit user declaration when available and
otherwise investigates the workspace before choosing new or existing. The
legacy form without --mode remains available for backward-compatible automatic
detection.
Coding Kit does not identify or move user requirement files. The DataCode agent
handles that work with file tools after showing the exact source-to-target plan
and receiving user confirmation. The kit only creates the authoritative
docs/requirements/source/ entry point and the persistent rules governing it.
Initialize the current directory and let the kit detect whether it is new or existing:
npx @datacode-ai/coding-kit@latest init --mode autoTo preview the planned changes or initialize another directory:
npx @datacode-ai/coding-kit@latest init --mode auto --dry-run
npx @datacode-ai/coding-kit@latest init --mode new --target ../empty-project
npx @datacode-ai/coding-kit@latest init --mode existing --target ../existing-projectAn explicitly declared new project may already contain requirement inputs or
other user files. Coding Kit preserves them, creates Git when needed, and still
refuses every conflicting managed target. Running
the initializer again in a workspace with a valid .datacode-kit.json replaces
only the fixed set of kit-managed files; project source code and authored
requirements, specifications, and decisions are not targets.
Reinitializing also preserves the recorded project mode, even when a different
--mode is supplied accidentally. A user-requested mode migration must pass
both the new explicit mode and --change-mode.
The generated AGENTS.md is the persistent project workflow contract. It maps
authoritative artifacts and routes each stage to the versioned practice guides.
docs/project/status.md records dynamic progress as one canonical row per
stage, links to authoritative approval records, reliable commits, and the next
allowed action without duplicating approval history or turning Coding Kit into
a workflow engine.
Every developer initializes the project-local GitHub Spec Kit runtime after a fresh clone:
npx @datacode-ai/coding-kit@latest sdd init --target .The command reads the exact @datacode-ai/spec-kit version pinned in
datacode.sdd.json. Generated Commands, scripts, and core templates are local
clone state and are added to .git/info/exclude. The project constitution,
template overrides, and specs/ remain version-controlled.
After building, the same command is available as:
node dist/cli.js init --mode new --target ../empty-projectGenerated workspace
project/
├── AGENTS.md
├── .datacode-kit/practice/ # versioned snapshot from the canonical docs site
├── datacode.project.json
├── datacode.sdd.json
├── docs/requirements/
├── docs/project/status.md # compact current-stage and authority index
├── docs/decisions/
└── tools/datacode/project.schema.jsonThe development-practice documents have one source of truth under
datacode/apps/docs-site/pages/development-practice/. Coding Kit snapshots that
source during build and npm packing, verifies its digest at initialization, and
installs the frozen snapshot into .datacode-kit/practice/. During a verified
upgrade, files listed by the prior valid manifest but removed from the new
snapshot are deleted; unrelated files are preserved. The generated project
should commit these hidden guides so every clone can resolve the same
instructions without network access.
/sdd-init subsequently installs the unmodified, version-pinned GitHub Spec Kit
runtime into local-only .datacode/ and .specify/ paths. Spec Kit owns the
generated specs/ structure and /speckit.* workflow; Coding Kit does not ship
a second SDD Skill or competing Feature templates.
The generated workspace records only current delivery progress in
docs/project/status.md; Git and authoritative artifacts preserve history.
Approval details remain in their single
authoritative requirement, specification, UI, decision, milestone, or
acceptance artifact. The relevant owner must approve requirements and configure
real setup, development, and verification commands as soon as the first runnable
project exists. UI validation uses source traceability and per-interaction
evidence rather than text-presence assertions.
Development
pnpm --filter @datacode-ai/coding-kit check
pnpm --filter @datacode-ai/coding-kit pack:localDataCode Runtime development can use the resulting trusted local tarball without publishing npm on every iteration. Launch the local VS Code extension with an absolute package path:
DATACODE_CODING_KIT_PACKAGE=/absolute/path/datacode-ai-coding-kit-0.6.0.tgz bun run extension:isolatedBoth /coding-init and /sdd-init use that same package for their read-only
guide and confirmed apply command. Leave the variable unset for the production
npm @latest path.
