Kali-Decoder / Kali-Decoder/Midnight-Skills

Reduce source duplication between example-* skills and templates/

Open
#16 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
16
Forks
5
PR merge metrics
No merged PRs in 30d

Description

The end-to-end examples are genuinely valuable — having full, runnable references lowers the barrier a lot, and the "Adapting This Template" section in `example-hello-world` (§15) is a great pattern that more skills could borrow.

**Observation.** The `example-*` skills currently inline the full application source (roughly 4,500 lines of fenced code across the set — e.g. `example-counter` ~1,360, `example-private-reserve-auction` ~1,105, `example-private-party-dapp` ~795). In three cases the same app also exists as a runnable template, so the code is maintained in two places:

- `example-locker-dapp` ↔ `templates/locker-dapp`
- `example-leaderboard-dapp` ↔ `templates/leaderboard-dapp`
- `example-private-party-dapp` ↔ `templates/private-party-dapp`

Others (`example-hello-world`, `example-counter`) mirror upstream reference repos (`midnightntwrk/example-hello-world`, `midnightntwrk/example-counter`) file-for-file.

**Why it matters.** Duplicated source tends to drift — a fix in the template won't reach the inlined copy, and vice versa — and it means the agent's main job becomes transcription rather than reasoning about how to adapt the code to the user's actual goal.

**Suggested direction (options):**

- Treat `templates/` (and the upstream repos, where applicable) as the single source of truth, and have the skill *point* to them rather than reproduce them.
- Shift the skill body toward what a template can't carry on its own: the architecture walkthrough, the "why," the decision points, and an "Adapting This Template" section like hello-world's.
- Keep short, illustrative snippets inline (the contract, a key circuit) but avoid reproducing entire config/boilerplate files.

This would also make the skills shorter and faster for an agent to load.

Contributor guide

Open the contributing guide

Research direction

Compare example-locker-dapp with templates/locker-dapp, example-leaderboard-dapp with templates/leaderboard-dapp, and example-private-party-dapp with templates/private-party-dapp; also inspect the example-hello-world and example-counter references. Decide how the skills should point to their sources while preserving architecture guidance and adaptation advice, then verify duplicated full application sources have been removed without losing runnable references.

Written by the indexing model from the issue text.

Assessment

Domain
content, documentation
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.