AI News HubLIVE
站内改写

Show HN: JDS – a Copilot skill suite for structuring AI coding behavior

JDS is a GitHub Copilot CLI plugin that enforces structured workflows (design before code, tests before implementation, evidence-based verification), transforming AI coding assistants from autocomplete tools into disciplined software engineers. It features a multi-stage pipeline (think → plan → execute → verify → finish) with both flexible and rigid skills for different task types.

Article intelligence

EngineersIntermediate

Key points

  • Enforces design-before-code, test-before-implementation, and evidence-based completion verification.
  • Workflow includes bootstrap, think, plan, execute, verify, and finish stages.
  • Execution uses a worker-pool scheduler dispatching tasks to isolated subagents with TDD enforcement.
  • Includes a real-time task graph visualization tool with WebSocket updates.

Why it matters

This matters because enforces design-before-code, test-before-implementation, and evidence-based completion verification.

Technical impact

May affect agent architecture, tool calling, workflow automation, and product integration.

Notifications You must be signed in to change notification settings

Fork 0

Star 2

BranchesTags

Open more actions menu

Folders and files

NameName

Last commit message

Last commit date

Latest commit

History

47 Commits

47 Commits

.github

.github

agents

agents

commands

commands

hooks

hooks

instructions

instructions

skills

skills

tools/viz

tools/viz

.gitignore

.gitignore

ATTRIBUTION.md

ATTRIBUTION.md

CODEOWNERS

CODEOWNERS

CONTRIBUTING.md

CONTRIBUTING.md

LICENSE

LICENSE

README.md

README.md

plugin.json

plugin.json

Repository files navigation

A skill suite that makes your AI coding assistant follow a real software development process.

JDS is a GitHub Copilot CLI plugin that enforces structured workflows — design before code, tests before implementation, evidence before completion claims. It turns your AI pair programmer from a code-spewing autocomplete into a disciplined software engineer that can work for hours on complex tasks without losing context or getting lost.

Why?

AI coding assistants are powerful but undisciplined. Without structure, they:

Skip design and jump straight to code

Write tests after implementation (or not at all)

Claim "it works" without running anything

Lose track of progress mid-task

Fix symptoms instead of root causes

JDS fixes this by enforcing a skill-based workflow that gates every phase of development.

The Workflow

Session start ↓ jds-bootstrap → Auto-injected via the SessionStart hook. Enforces the skill-check rule. ↓ User Request ↓ jds-think → Explore, clarify, design, write spec ↓ jds-plan → Break spec into atomic, verifiable tasks ↓ jds-execute → Worker-pool scheduler dispatches tasks to isolated subagents ├── jds-tdd → RED → GREEN → REFACTOR (every time) └── jds-debug → Systematic root-cause analysis (when things break) ↓ jds-verify → Evidence-based completion (actual output, not "I think it works") ↓ jds-finish → Clean up working artifacts

Every task passes through this pipeline. Simple tasks get a lightweight pass. Complex tasks get the full treatment. But nothing skips the process entirely.

Skills

Skill Type What It Does

jds-bootstrap Flexible Session entry point. Enforces skill-check before any action.

jds-think Flexible The design gate. Explores codebase, asks clarifying questions, proposes approaches, writes specs.

jds-plan Flexible Translates specs into atomic tasks (2-5 min each). No placeholders, no hand-waving.

jds-execute Flexible Runs tasks via a worker-pool scheduler of isolated subagents. Tops up freed slots the moment any subagent completes — independent tasks run concurrently up to a configurable cap.

jds-tdd Rigid Enforces RED-GREEN-REFACTOR. Tests first, always. Code written before tests? Delete it.

jds-refactor Rigid Safe structural changes with behavioral equivalence verification. Tests must pass before and after.

jds-debug Rigid 4-phase root-cause analysis: Investigate → Analyze → Hypothesize → Fix. No symptom-patching.

jds-verify Rigid Requires actual command output as evidence. "I believe this works" is not verification.

jds-finish Rigid Cleans up specs, plans, and tracking state. Does not commit — that's your job.

Rigid skills follow exact protocols. No adaptation, no shortcuts. Flexible skills adapt to context but maintain their structure.

Agents

Agent Role

explainer Translates code and systems into clear explanations

code-reviewer Senior reviewer focused on security, quality, and correctness

tester QA engineer that writes tests using When_Action_Expect_Result naming

Commands

Command What It Does

code-review Reviews current branch or a specific PR

security-audit-review Deep security audit — read-only, produces a report

Visualization

JDS ships a task graph visualization server (tools/viz) that renders your session's todo dependency graph in real time. It starts automatically when jds-execute begins and shuts down when the session ends.

Task visualization running at http://localhost:3847

The UI shows each task as a node, colored by status:

Color Status

🔵 Blue (pulsing) in_progress

🔴 Red (pulsing) blocked

🟢 Green done

⬜ Neutral pending

Edges represent dependencies — an arrow from A to B means B depends on A. The graph updates live via WebSocket as tasks change state. If port 3847 is in use, the server picks the next free port automatically.

Note: The visualization server may take longer to complete npm install and npm run build, depending on your environment. To avoid delays, you can run these steps in advance to generate the dist/ folder, or instruct your agent to execute them before starting your first JDS session.

Installation

Step 1: Add the marketplace

copilot plugin marketplace add josipmusa/jds

Step 2: Install the plugin

copilot plugin install jds@jds-marketplace

Or, from within an interactive Copilot CLI session, use the slash command equivalents:

/plugin marketplace add josipmusa/jds /plugin install jds@jds-marketplace

Quick Start

Once installed, JDS activates automatically at session start — the SessionStart hook (defined in hooks/hooks.json) injects the jds-bootstrap skill context into every new session, so you never have to invoke skills manually. The typical flow for any non-trivial task:

jds-think → clarify requirements, write a spec jds-plan → break the spec into atomic tasks jds-execute → implement via isolated subagents (TDD enforced) jds-verify → confirm everything works with real output jds-finish → clean up working artifacts

Key Principles

Design Before Code

Every task passes through jds-think before any code is written. A 2-minute design for a simple task is fine. Skipping design entirely is not.

Tests Before Implementation

jds-tdd enforces RED-GREEN-REFACTOR on every code change. If code exists before a test, delete it and start over. This is not negotiable.

Evidence Over Claims

jds-verify requires actual command output — not summaries, not reasoning, not "I believe this works." Run the tests. Show the output.

Context Isolation

Subagents never inherit session history. Each task gets a focused, self-contained prompt with only what it needs. This prevents stale assumptions and forces verifiable outputs.

No Placeholders

Plans contain complete code, not "add validation" or "handle edge cases." Every task must be executable by a subagent without inferring intent.

Copilot Instructions

JDS ships with a set of general-purpose copilot instructions at instructions/copilot-instructions.md — inspired by Andrej Karpathy's coding agent guidelines. These are opinionated defaults that complement the skill suite:

Think before coding — state assumptions, surface ambiguity, ask instead of guessing

Simplicity first — minimum code that solves the problem, no speculative abstractions

Surgical changes — change only what's requested, match existing patterns

Goal-driven execution — define success criteria with exact verification commands

No design artifacts in commits — JDS working files are cleaned up before any git operation

We recommend copying these instructions into your global Copilot instructions file (typically ~/.copilot/copilot-instructions.md) so they apply across all your projects. If you already have your own instructions, JDS respects the priority chain: your instructions > JDS skills > system defaults.

Acknowledgements

JDS is an adaptation of the superpowers repository by @obra (Jesse Vincent), used under the MIT License. The core philosophy — skill-based enforcement of software development discipline for AI agents — originates from that project. JDS adapts the concepts, restructures the skills for Copilot's plugin system, and adds Copilot-specific features like SQL-based task tracking. See ATTRIBUTION.md.

License

MIT

About

JDS skill suite for agentic coding tools targeted specifically for Copilot.

Resources

Readme

License

MIT license

Contributing

Contributing

Uh oh!

There was an error while loading. Please reload this page.

Activity

Stars

2 stars

Watchers

0 watching

Forks

0 forks

Report repository

Releases 1

v1.0.0

Latest

Apr 13, 2026

Packages 0

Uh oh!

There was an error while loading. Please reload this page.

Contributors

Uh oh!

There was an error while loading. Please reload this page.

Languages

HTML 61.3%

TypeScript 20.0%

Shell 14.0%

Batchfile 4.7%