feat(cli): emit rules in Kilo flat builds

Open
#868 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
48/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
typescript
Domain
build-system, cli

Research direction

Start with issue #744 and its Kilo profile, configuration resolution, and runtime contract, then trace aidd framework build --target kilo --flat. Verify the implementation against the acceptance criteria: generated namespaced rules are placed at the profile-resolved location, configuration preserves user instructions, repeated builds are idempotent, and a clean-project archive is discoverable by a supported Kilo runtime.

Written by the indexing model from the issue text.

Description

Problem

Kilo flat support from #744 will make it possible to distribute framework artifacts for Kilo. Canonical plugin rules would still be absent from that output.

This is separate from #788, which guides direct generation inside a host project. This issue distributes canonical plugin rules through aidd framework build --target kilo --flat.

Scope

  • Materialize canonical plugin rules/ into namespaced Markdown files under the Kilo rules location resolved by the Kilo profile.
  • Merge generated rule references into the resolved Kilo project configuration without deleting or reordering user-owned instructions entries.
  • Make repeated builds idempotent and preserve relative paths, rule scope, and existing user configuration.
  • Cover empty configuration, existing instructions, repeated builds, and a flat archive installed into a clean project.

Acceptance criteria

  • A plugin rule is present in a Kilo flat build at the location returned by the Kilo profile.
  • The Kilo configuration references generated rules while preserving every existing user-owned instructions entry.
  • Rebuilding neither duplicates generated entries nor alters user-owned entries.
  • The generated rule is discoverable by a supported Kilo runtime.

Dependency

Blocked by #744. That issue owns the Kilo profile, including its configuration resolution and runtime contract; this issue must use that contract rather than duplicate it.

Out of scope

  • Direct artifact generation in a project, owned by #788.
  • Kilo lifecycle hooks and plugins, owned by #744.
  • OpenCode flat output, owned by #789.
  • Markdown commands under .kilo/commands/: Kilo does not document that as a native artifact surface. A future command capability, if needed, requires its own plugin-backed product decision.
Dominant language
TypeScript
Stars
481
Forks
45
Avg merge
17h 40m
Merged PRs (30d)
106

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from ai-driven-dev/framework

All issues in ai-driven-dev/framework

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.