{"id":"ede98c9e-bf71-4fd8-8969-ef09dafe8b1b","slug":"techneering","kind":"skill","name":"techneering","summary":"Spec-driven development skills plugin for Claude Code and Codex: 16 tn: skills for spec, implementation, verification, release, and archive.","owner":"devnomad-byte","repoUrl":"https://github.com/devnomad-byte/techneering","license":"MIT","licenseTier":"permissive","trust":"community","stars":13,"match":null,"fewStars":false,"format":"skill","createdAt":null,"addedAt":"2026-10-14T06:08:44.109Z","logoUrl":"https://avatars.githubusercontent.com/u/50169713?u=f419ff850ecac65536a2b45370b7ca01647c77f2&v=4","linkOnly":false,"collection":null,"skillPath":null,"categories":["developer-tools"],"tags":["ai-agents","ai-coding","claude-code","codex","devtools","spec-driven-development","tdd"],"runtime":"binary","local":true,"cloudCapable":false,"cloudCapability":"unknown","cloudReadyOnPlatform":false,"needsApiKey":false,"reviewed":false,"syncedAt":"2026-10-14T09:18:00.390Z","sample":false,"url":"https://conduits.dev/tools/techneering","language":"Batchfile","transports":["stdio"],"install":{},"requirements":{"env":[],"upstreamMayCharge":false},"tools":null,"readme":"<div align=\"center\">\n\n# ⚒️ Techneering\n\n### Engineering, with ancient discipline.\n\n**Write the spec. Strike while it's hot. Ship with confidence.**\n\n[![license](https://img.shields.io/badge/license-MIT-black?style=flat-square)](LICENSE)\n[![GitHub stars](https://img.shields.io/github/stars/devnomad-byte/techneering?style=flat-square&label=stars&color=yellow)](https://github.com/devnomad-byte/techneering/stargazers)\n[![skills](https://img.shields.io/badge/skills-16-orange?style=flat-square)](#the-16-skills)\n[![platform](https://img.shields.io/badge/platform-Win%20%7C%20mac%20%7C%20Linux-555?style=flat-square)](#requirements)\n[![claude](https://img.shields.io/badge/Claude%20Code-plugin-blueviolet?style=flat-square)](#quick-start)\n[![codex](https://img.shields.io/badge/Codex-plugin-412f3d?style=flat-square)](#quick-start)\n\n`tn:` · a skills plugin for **Claude Code** and **Codex**\n\n**English** · [简体中文](README.zh-CN.md)\n\n</div>\n\n---\n\n## The problem\n\nA model coding on its own will **drift**. It guesses when it should ask. It over-builds when it should stop. It forgets decisions made ten minutes ago, declares success without checking, and leaves you to discover — in review, in prod, at 2 a.m. — what it quietly got wrong.\n\nThe output looks like code. It isn't craft.\n\n## The discipline\n\nTechneering wraps the model in a **harness** — Anthropic's word for the scaffolding around an agent — so its effort stays pointed where *you* aimed it. Sixteen skills walk a change from idea, through spec and code, to a verified, archived release.\n\n> **The spec is the contract. The harness is the discipline.**\n> Every line of code traces back to a requirement; nothing ships on a hunch.\n\n---\n\n## Four layers, one system\n\nAI tooling has evolved through four layers. Most stop at one. Techneering was built for all of them.\n\n| Layer | Question | In Techneering |\n|-------|----------|----------------|\n| **Prompt** | How to write one instruction well | every `SKILL.md` is a carefully designed prompt |\n| **Context** | How to manage what the AI sees | the workspace — files carry state, not chat memory |\n| **Harness** | How to constrain what the agent does | the 16-skill scaffold: *spec = contract, harness = discipline* |\n| **Loop** | How to get the AI to iterate to quality | `assemble → redgreen → gate → audit → inspect → ship → vault` |\n\nThese aren't separate features — they're the same system seen from four angles. And Techneering keeps the parts loop systems usually skip: explicit **failure limits**, **generation ≠ evaluation**, and a **depth dial** so a trivial tweak skips the full ceremony.\n\n---\n\n## The 16 Skills\n\nThe names follow a **forge workshop**: the spec is raw material, the code is the forged product, and each skill is a station on the shop floor.\n\n### 🧭 The Smithy — core flow\n\n| Skill | Call | What it does |\n|-------|------|--------------|\n| **compass** | `tn:compass` | Gateway. Auto-loaded at session start — picks the right path |\n| **scout** | `tn:scout` | Think out loud. Explore ideas, write no files |\n| **draft** | `tn:draft` | Generate proposal + specs + design + tasks in one pass |\n| **forge** | `tn:forge` | Implement. Chains blueprint → assemble internally |\n| **audit** | `tn:audit` | Dual-layer check: code↔spec + code↔real requirements |\n| **vault** | `tn:vault` | Merge delta specs into main specs, archive the change |\n\n### 🧠 The Drawing Board — thinking & planning\n\n| Skill | Call | What it does |\n|-------|------|--------------|\n| **spark** | `tn:spark` | Brainstorm design, detect coding style, recommend frameworks |\n| **blueprint** | `tn:blueprint` | Break the spec into bite-sized, testable tasks |\n\n### 🔨 The Anvil — execution\n\n| Skill | Call | What it does |\n|-------|------|--------------|\n| **assemble** | `tn:assemble` | Dispatch one subagent per task, two-stage review each |\n| **redgreen** | `tn:redgreen` | Test-driven: red (failing test) → green (minimal code) → refactor |\n| **diagnose** | `tn:diagnose` | Systematic debugging: root cause before any fix |\n\n### 🔍 The Inspection Bench — quality gates\n\n| Skill | Call | What it does |\n|-------|------|--------------|\n| **gate** | `tn:gate` | Iron law: run the command, read the output, *then* claim it works |\n| **inspect** | `tn:inspect` | Global cross-task review — consistency, architecture, security |\n\n### 📦 The Shipping Dock — utilities\n\n| Skill | Call | What it does |\n|-------|------|--------------|\n| **isolate** | `tn:isolate` | Create an isolated git worktree, verify the test baseline |\n| **ship** | `tn:ship` | Branch integration: merge / PR / keep / discard |\n| **craft** | `tn:craft` | Frontend design guidance (auto-stacked on UI keywords) |\n\n---\n\n## Quick Start\n\nTechneering runs on both **Claude Code** and **Codex**. Same skills, same `tn:` prefix — pick your host.\n\n**Claude Code:**\n\n```bash\n# 1. Register the marketplace\nclaude plugin marketplace add https://github.com/devnomad-byte/techneering.git\n\n# 2. Install — project-scoped is recommended\nclaude plugin install tn@techneering -s project\n\n# 3. Start Claude Code and strike\nclaude\n```\n\n**Codex:**\n\n```bash\n# 1. Register the marketplace (clones the repo as a source)\ncodex plugin marketplace add devnomad-byte/techneering\n\n# 2. Install\ncodex plugin install tn@techneering\n\n# 3. Start Codex and strike\ncodex\n```\n\nThen type <kbd>/tn:scout</kbd> to take it for a spin. On every session start, `tn:compass` is auto-injected (via the `SessionStart` hook on either host) — just say what you want to build and Techneering routes you to the right station.\n\n---\n\n## How It Works\n\nTechneering picks one of four paths based on change size, then walks you through it station by station:\n\n| Path | Flow |\n|------|------|\n| **Large change** | `spark → draft → forge → gate →` you choose verify depth |\n| **Medium change** | `draft → forge → gate →` you choose verify depth |\n| **Urgent bug** | `diagnose → redgreen → gate →` you choose verify depth |\n| **Trivial tweak** | `direct edit → gate` *(optional)* |\n\n**Always available:**\n- `scout` — pure thinking, writes no files\n- `craft` — auto-stacked when frontend work is detected\n\nInside `forge`, two skills chain automatically — **blueprint** breaks the work into tasks, **assemble** dispatches a fresh subagent per task with spec-compliance + code-quality review after each.\n\n<details>\n<summary><b>After the gate passes, pick how deep to verify</b></summary>\n\n| Option | Flow | When |\n|--------|------|------|\n| **1** Full verification | `audit → inspect → ship → vault` | Production code |\n| **2** Standard flow | `audit → ship → vault` | Routine features |\n| **3** Quick commit | `ship → vault` | Prototypes, small changes |\n| **4** Verify only | `audit` | Just check, don't commit |\n\n</details>\n\nEvery skill writes its progress to disk. Close the terminal, come back tomorrow — Techneering scans the files and resumes exactly where you struck off.\n\n---\n\n## Design Philosophy\n\n> **You drive the AI. Not the other way around.**\n\n| Principle | What it means |\n|-----------|---------------|\n| **You hold the reins** | Every step is a handoff *you* approve. AI proposes, you decide. Nothing ships without a human checkpoint. |\n| **The spec is the contract** | Requirements live in files, not chat. Every line of code traces back to a `SHALL`/`MUST` — drift becomes visible, not invisible. |\n| **Generation ≠ evaluation** | The agent that wrote the code never grades it. Separate reviewers (`tn:audit`, `tn:inspect`) check against spec and reality — models grade their own work too leniently to self-evaluate. |\n| **Context is a file, not memory** | Each skill reads its inputs from disk and writes its outputs back. New session, new subagent, same source of truth — nothing lives only in someone's head. |\n| **Simplest harness that works** | Four paths, not one. Trivial tweaks skip the full ceremony; only production code walks every gate. Complexity is added when the task earns it, never before. |\n\nThis pattern — decompose, hand off via artifacts, separate generation from evaluation — comes from [Anthropic's work on long-running agents](https://www.anthropic.com/engineering/harness-design-long-running-apps). Techneering applies it to **human-in-the-loop** development: the harness keeps the AI disciplined, you keep the harness pointed at the right target.\n\nThe loop is the latest layer — [a pattern Addy Osmani named in 2025](https://addyosmani.com/blog/loop-engineering/): stop hand-prompting every step, design the system that does it. Techneering was built this way from the start — including the parts most loop systems skip: explicit **failure limits** (`tn:diagnose` stops after 3 failed fixes), **generation ≠ evaluation** (the writer never grades its own work), and a **depth dial** so trivial tweaks skip the full ceremony.\n\n---\n\n## The Workspace\n\nRunning `tn:draft` generates a self-contained workspace at your project root. It is the source of truth; nothing lives only in chat.\n\n```\ntechneering/\n├── config.yaml          # tech stack · coding style · quality rules\n├── specs/               # authoritative module definitions\n├── changes/\n│   └── <name>/          # one directory per change\n│       ├── .tn.yaml\n│       ├── proposal.md  # why  — the motivation\n│       ├── specs/       # what — SHALL/MUST · WHEN/THEN\n│       ├── design.md    # how  — decisions & trade-offs\n│       └── tasks.md     # todo — checkbox-tracked, resumable\n└── archive/             # finished changes, fully preserved\n```\n\n`tn:audit` traces every line of code back to a requirement. `tn:vault` merges finished specs into the main `specs/`, so knowledge **compounds** instead of evaporating.\n\n---\n\n## Requirements\n\nPick **one** host (Techneering works on either, or both):\n\n| Dependency | Why |\n|------------|-----|\n| **Claude Code CLI** *or* **Codex CLI** (latest) | the host that runs the skills |\n| **Git** 2.20+ | the `isolate` station needs worktrees |\n| **Bash** 4.0+ | the session-start hook (shared by both hosts) |\n\nRuns on Windows 10/11 · macOS 12+ · Linux.\n\n---\n\n## Star History\n\n<a href=\"https://www.star-history.com/?repos=devnomad-byte%2Ftechneering%2Ctechneering%2Ftechneering&type=date&legend=top-left\">\n <picture>\n   <source media=\"(prefers-color-scheme: dark)\" srcset=\"https://api.star-history.com/chart?repos=devnomad-byte/techneering%2Ctechneering/techneering&type=date&theme=dark&legend=top-left\" />\n   <source media=\"(prefers-color-scheme: light)\" srcset=\"https://api.star-history.com/chart?repos=devnomad-byte/techneering%2Ctechneering/techneering&type=date&legend=top-left\" />\n   <img alt=\"Star History Chart\" src=\"https://api.star-history.com/chart?repos=devnomad-byte/techneering%2Ctechneering/techneering&type=date&legend=top-left\" />\n </picture>\n</a>"}