
Tech Tutorial
Draft technical tutorials whose shell and code blocks are tested, language-tagged, and paired with honest output examples so readers can reproduce steps.
Overview
tech-tutorial is an agent skill most often used in Build (also Grow content, Ship launch docs) that enforces tested, labeled code examples and verified output in technical tutorials.
Install
npx skills add https://github.com/athola/claude-night-market --skill tech-tutorialWhat is this skill?
- Testing rule: every runnable snippet must be executed in a clean shell or container before publication
- Requires fenced blocks with explicit language ids (bash not sh) plus Output blocks in text fences
- Untested snippets must carry an HTML comment noting platform and version limits
- Module metadata ties to artifact-generation with an estimated 550-token footprint
- Estimated 550 tokens for the code-examples module
Adoption & trust: 1 installs on skills.sh; 304 GitHub stars; 3/3 security scanners passed (skills.sh audits); trending (+100% hot-view momentum).
What problem does it solve?
Your tutorial reads well but readers hit failing commands because snippets were never run and outputs were guessed.
Who is it for?
Solo builders and doc-writing agents producing CLI quickstarts, API guides, or course lessons where reproducibility is the success metric.
Skip if: Pure architecture decision records with no runnable steps, or marketing landing copy without command sequences.
When should I use this skill?
When generating or editing technical tutorials that include shell or language code blocks readers are expected to execute.
What do I get? / Deliverables
After applying the skill, each runnable block is verified, outputs are quoted accurately, and untested sections are explicitly labeled so docs stay trustworthy.
- Language-tagged fenced code blocks
- Verified Output sections in text fences
- Untested-region HTML comments when full verification is impossible
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Tutorial drafting usually happens while documenting how to build or run the product, which is canonical Build docs work. The skill governs code-example quality inside markdown tutorials—core developer documentation craftsmanship.
Where it fits
Author a README quickstart where every npm and node command was run in a clean container first.
Publish a SEO tutorial post with labeled Output blocks so search visitors can copy-paste without surprise errors.
Document release install steps for v1.0 with version-specific comments where Windows behavior was not verified.
How it compares
Use for runnable-tutorial hygiene instead of free-form blogging that skips output verification.
Common Questions / FAQ
Who is tech-tutorial for?
Developers and agent authors who write step-by-step technical content and need a enforceable test-before-publish rule for code blocks.
When should I use tech-tutorial?
In Build docs when writing README or integration guides; in Grow content when publishing tutorials for acquisition; in Ship launch when documenting install paths for a release.
Is tech-tutorial safe to install?
It encourages running commands locally; review the Security Audits panel on this page and sandbox unfamiliar install scripts before executing tutorial commands.
SKILL.md
READMESKILL.md - Tech Tutorial
# Writing Effective Code Examples Code examples are the primary content of a technical tutorial. Write and run each snippet before embedding it in the document. A tutorial with untested code is broken. ## The Testing Rule Every code block that the reader is expected to run must be tested in a real environment before publication. This means: 1. Run the command in a clean shell or container 2. Confirm the output matches what you claim 3. Record the exact output to quote in the tutorial 4. Note any version-specific behavior If you cannot test a snippet, mark it clearly as untested: ```markdown <!-- Note: untested on Windows; verified on macOS 14.3 --> ``` Never present guessed output as verified. ## Formatting Rules Use fenced code blocks with a language identifier on every block: ```markdown ```bash npm install express ``` ``` Common language identifiers: | Content Type | Identifier | |--------------|------------| | Shell commands | `bash` | | Python | `python` | | JavaScript/Node | `javascript` | | YAML config | `yaml` | | JSON output | `json` | | Generic output | `text` | Do not use `sh` as an identifier; use `bash` or `zsh` explicitly. ## Output Blocks Show expected output after every command that produces visible output. Use a `text` block with the label "Output:" on its own line: ```markdown Run the server: ```bash node server.js ``` Output: ```text Server running on http://localhost:3000 ``` ``` If output is long, truncate with `...` and show the key lines: ```text Downloading packages... ... Successfully installed 14 packages in 2.3s ``` ## Annotation Guidelines Annotate only the non-obvious parts. Over-annotation creates noise that pushes readers past the code. Good annotation targets: - A flag or option whose name does not explain itself - A value the reader must substitute for their own - A syntax form they may not have seen before Mark substitution points with angle brackets: ```bash git remote add origin git@github.com:<your-username>/<repo-name>.git ``` Do not annotate things that the code makes self-evident. ## Handling Errors in Examples When showing an expected error (to teach debugging), be explicit: ```markdown Running this command before installing dependencies will fail: ```bash node server.js ``` Output: ```text Error: Cannot find module 'express' ``` Install dependencies first, then retry. ``` Never silently show error output without explaining it. ## Long Code Example Handling For files longer than 30 lines, show only the relevant portion: ```markdown In `config/database.js`, update the connection string (line 12): ```javascript // config/database.js (excerpt) const connection = { host: process.env.DB_HOST, port: 5432, database: process.env.DB_NAME, }; ``` ``` Provide a link to the full file in a repository if one exists. ## Verify Your Examples Work Before including any example, run this checklist: - [ ] Command produces the stated output - [ ] Tested in the same environment as the reader will use - [ ] Language identifier is present on the fenced block - [ ] Output block follows every command with visible output - [ ] Substitution points use angle bracket notation - [ ] Untested blocks carry an explicit disclaimer --- module: outline-structure category: artifact-generation dependencies: [] estimated_tokens: 500 --- # Tutorial Outline and Structure A tutorial outline is a contract with the reader: it says what they will do and in what order. Write the outline before drafting any prose. If an outline entry is hard to describe in one line, the section is too large and needs splitting. ## Standard Section Order Most technical tutorials follow this sequence: 1. **Title** - What the reader will build or accomplish 2. **Prerequisites** - What they must have installed or know 3. **What You Will Build** - One paragraph, concrete outcome 4. **Setup** - Environ