test-driven-development
test-driven-development is a skill in GanyuanRan/Aegis, last changed 10 Oct 2026. It can run shell commands. Our pattern check flagged nothing at commit 0461c21 on 27 Oct 2026.
Pattern check: nothing flagged · commit 0461c21 · 27 Oct 2026
InstallUse when the user explicitly requests strict or test-first TDD, or when the current conversation already contains an explicit `TDD Route: strict` decision from another Aegis workflow.
- Licence
- MIT
- Repo stars
- 1.4k
- Folder last changed
- 10 Oct 2026 (opens in a new tab)
- Publisher
- GanyuanRan
- Files
- 1 file
- Checked
- 0461c21 (opens in a new tab) · 27 Oct 2026
Install
Each tab says whether it installs commit 0461c21, the one we checked, or the latest version.
No tab for your agent? Use Any agent for OpenCode, Goose, Windsurf (Devin Desktop), Zed, Roo Code, Factory Droid, Junie, Amp and Antigravity, and Claude Code for Cline. Kiro needs the folder copied by hand.
Pinned to commit 0461c21, the one we checked.
From your project's root folder:
tmp="$(mktemp -d)" &&
git clone -q --depth 1 --filter=blob:none --no-checkout https://github.com/GanyuanRan/Aegis.git "$tmp" &&
git -C "$tmp" fetch -q --depth 1 origin 0461c211e4d812f0b215fab240a68a25c1e22424 &&
git -C "$tmp" sparse-checkout set -- skills/test-driven-development &&
git -C "$tmp" checkout -q 0461c211e4d812f0b215fab240a68a25c1e22424 &&
mkdir -p .claude/skills &&
mkdir .claude/skills/test-driven-development &&
cp -R "$tmp"/skills/test-driven-development/. .claude/skills/test-driven-development/ &&
rm -rf "$tmp"If Claude Code was already running and this created the skills folder, run /reload-skills.
Or install the aegis plugin it ships in. Installs the latest version, not the one we checked. Installs everything in the plugin, including any hooks, MCP servers and scripts our check doesn't cover.
claude plugin marketplace add GanyuanRan/Aegis --scope project &&
claude plugin install aegis@aegis-dev --scope projectPinned to commit 0461c21, the one we checked.
Skills in the Claude apps belong to your account rather than to a project.
Make test-driven-development.zip, with the skill folder at the top level:
tmp="$(mktemp -d)" &&
git clone -q --depth 1 --filter=blob:none --no-checkout https://github.com/GanyuanRan/Aegis.git "$tmp" &&
git -C "$tmp" fetch -q --depth 1 origin 0461c211e4d812f0b215fab240a68a25c1e22424 &&
git -C "$tmp" sparse-checkout set -- skills/test-driven-development &&
git -C "$tmp" checkout -q 0461c211e4d812f0b215fab240a68a25c1e22424 &&
out="$(mktemp -d)" &&
cp -R "$tmp"/skills/test-driven-development "$out"/test-driven-development &&
(cd "$out" && zip -qr - test-driven-development) > test-driven-development.zip &&
rm -rf "$tmp" "$out"In Claude, open Customize > Skills, select +, then + Create skill > Upload a skill, and choose test-driven-development.zip.
On Free, Pro and Max plans, turn on Code execution and file creation (Create and edit files in newer settings) under Settings > Capabilities.
Pinned to commit 0461c21, the one we checked.
From your project's root folder:
tmp="$(mktemp -d)" &&
git clone -q --depth 1 --filter=blob:none --no-checkout https://github.com/GanyuanRan/Aegis.git "$tmp" &&
git -C "$tmp" fetch -q --depth 1 origin 0461c211e4d812f0b215fab240a68a25c1e22424 &&
git -C "$tmp" sparse-checkout set -- skills/test-driven-development &&
git -C "$tmp" checkout -q 0461c211e4d812f0b215fab240a68a25c1e22424 &&
mkdir -p .agents/skills &&
mkdir .agents/skills/test-driven-development &&
cp -R "$tmp"/skills/test-driven-development/. .agents/skills/test-driven-development/ &&
rm -rf "$tmp"Codex picks up new skills on its own; restart it if this one does not appear.
Pinned to commit 0461c21, the one we checked.
From your project's root folder:
tmp="$(mktemp -d)" &&
git clone -q --depth 1 --filter=blob:none --no-checkout https://github.com/GanyuanRan/Aegis.git "$tmp" &&
git -C "$tmp" fetch -q --depth 1 origin 0461c211e4d812f0b215fab240a68a25c1e22424 &&
git -C "$tmp" sparse-checkout set -- skills/test-driven-development &&
git -C "$tmp" checkout -q 0461c211e4d812f0b215fab240a68a25c1e22424 &&
mkdir -p .cursor/skills &&
mkdir .cursor/skills/test-driven-development &&
cp -R "$tmp"/skills/test-driven-development/. .cursor/skills/test-driven-development/ &&
rm -rf "$tmp"Pinned to commit 0461c21, the one we checked.
From your project's root folder:
tmp="$(mktemp -d)" &&
git clone -q --depth 1 --filter=blob:none --no-checkout https://github.com/GanyuanRan/Aegis.git "$tmp" &&
git -C "$tmp" fetch -q --depth 1 origin 0461c211e4d812f0b215fab240a68a25c1e22424 &&
git -C "$tmp" sparse-checkout set -- skills/test-driven-development &&
git -C "$tmp" checkout -q 0461c211e4d812f0b215fab240a68a25c1e22424 &&
mkdir -p .github/skills &&
mkdir .github/skills/test-driven-development &&
cp -R "$tmp"/skills/test-driven-development/. .github/skills/test-driven-development/ &&
rm -rf "$tmp"In a running Copilot CLI session, run /skills reload.
Or install it with gh skill, which also installs the commit we checked. Needs GitHub CLI 2.90 or later.
gh skill install GanyuanRan/Aegis skills/test-driven-development/SKILL.md@0461c211e4d812f0b215fab240a68a25c1e22424 --agent github-copilot --scope projectPinned to commit 0461c21, the one we checked.
From your project's root folder:
tmp="$(mktemp -d)" &&
git clone -q --depth 1 --filter=blob:none --no-checkout https://github.com/GanyuanRan/Aegis.git "$tmp" &&
git -C "$tmp" fetch -q --depth 1 origin 0461c211e4d812f0b215fab240a68a25c1e22424 &&
git -C "$tmp" sparse-checkout set -- skills/test-driven-development &&
git -C "$tmp" checkout -q 0461c211e4d812f0b215fab240a68a25c1e22424 &&
mkdir -p .gemini/skills &&
mkdir .gemini/skills/test-driven-development &&
cp -R "$tmp"/skills/test-driven-development/. .gemini/skills/test-driven-development/ &&
rm -rf "$tmp"In a running session, run /skills reload.
Or use Gemini CLI’s own installer. Installs the latest version, not the one we checked.
gemini skills install https://github.com/GanyuanRan/Aegis.git --path skills/test-driven-development --scope workspacePinned to commit 0461c21, the one we checked.
Codex, Cursor, Copilot, VS Code, Gemini CLI, OpenCode, Goose, Amp and Zed all read .agents/skills; Claude Code and Kiro list only their own folders.
From your project's root folder:
tmp="$(mktemp -d)" &&
git clone -q --depth 1 --filter=blob:none --no-checkout https://github.com/GanyuanRan/Aegis.git "$tmp" &&
git -C "$tmp" fetch -q --depth 1 origin 0461c211e4d812f0b215fab240a68a25c1e22424 &&
git -C "$tmp" sparse-checkout set -- skills/test-driven-development &&
git -C "$tmp" checkout -q 0461c211e4d812f0b215fab240a68a25c1e22424 &&
mkdir -p .agents/skills &&
mkdir .agents/skills/test-driven-development &&
cp -R "$tmp"/skills/test-driven-development/. .agents/skills/test-driven-development/ &&
rm -rf "$tmp"Or use the skills CLI from skills.sh. Installs the latest version, not the one we checked. The skills CLI reports installs to skills.sh unless you set DISABLE_TELEMETRY=1.
npx skills@1.7.4 add GanyuanRan/Aegis --skill test-driven-developmentWhat it can touch
From the files and frontmatter at commit 0461c21. This is how much a skill can do, not whether it is risky.
What it can touch: Scripts or outside hosts
Runs shell commands
Its instructions or files give the agent commands to run on your computer.
Pattern check
Pattern check: nothing flagged · commit 0461c21 · 27 Oct 2026
We checked every text file in this skill, at commit 0461c21 on 27 Oct 2026, against 45 published patterns such as download-and-run commands, hidden text and credential access. We don't run the skill, we don't read the web pages it points to, and we can't judge everything its instructions might lead an agent to do. In published tests, pattern checks like this one missed most malicious skills. Read the skill before you install it — especially anything it asks you to download or run.
Format check
Each agent reads SKILL.md a little differently. We check the file against each one's published rules; we don't run the skill in any agent.
Agent Skills specPasses
The open format from agentskills.io, held to what the strictest agents enforce, so one folder loads everywhere.
- Note
There is no license field, so readers can't tell whether they may reuse the skill. O2
Fix: Add license: with an SPDX name such as MIT or Apache-2.0, or the name of a bundled licence file.
- Note
- Claude CodePasses
- Claude apps & API uploadPasses
- OpenAI (Codex & API)Passes
- VS Code & CopilotPasses
SKILL.md
Files
1 file
| Path | Size |
|---|---|
| SKILL.md (opens in a new tab) | 17.7 KB |
More from GanyuanRan/Aegis
anti-entropy-governance
GanyuanRan/Aegis
Use when touching retiring old logic, collapsing duplicate owners, removing fallbacks, or schema/persistence/source-of-truth boundaries; identify opportunities automatically; destructive execution requires explicit confirmation.
- Runs shell commands
Pattern check: Nothing flaggedMIT · 1.4k repo stars · Updated 26 Sept 2026
brainstorming
GanyuanRan/Aegis
Use when defining ambiguous or high-complexity new features, product behavior, UI/component design, architecture choices, contract changes, or when grilling/pressure-testing a plan or design. Routine small requests stay on the fast path.
- Runs shell commands
Pattern check: Nothing flaggedMIT · 1.4k repo stars · Updated 11 Oct 2026
communicating-concisely
GanyuanRan/Aegis
Use when the user asks for caveman mode, fewer tokens, brief responses, compressed communication, or otherwise explicitly requests a much shorter answer.
- Instructions only
Pattern check: Nothing flaggedMIT · 1.4k repo stars · Updated 23 Jul 2026
dispatching-parallel-agents
GanyuanRan/Aegis
Use when facing 2+ independent tasks without a written plan, with no conflicting shared mutable state or sequential dependencies, where parallel delegation beats inline cost; otherwise inline. Planned tasks use subagent-driven-development.
- Instructions only
Pattern check: Nothing flaggedMIT · 1.4k repo stars · Updated 19 Sept 2026
establishing-project-context
GanyuanRan/Aegis
Use when the user asks to establish shared project language, or project work exposes a conflicting, renamed, or deprecated domain term that needs active semantic modeling. Routine small tasks stay on the fast path.
- Instructions only
Pattern check: Nothing flaggedMIT · 1.4k repo stars · Updated 9 Aug 2026
executing-plans
GanyuanRan/Aegis
Use when executing a written implementation plan across sessions or with review checkpoints. Small or single-slice plans stay inline. For same-session independent tasks, use subagent-driven-development instead.
- Instructions only
Pattern check: Nothing flaggedMIT · 1.4k repo stars · Updated 30 Sept 2026