All skills
simota avatar

/tome

@35ffd55
by shingo imotasimota/agent-skills85 stars
15

Converting technical knowledge into durable learning documents and publishable articles. Use for diff-based teaching, decision records, onboarding, note/Zenn/Qiita/dev.to posts, article series, retrospectives, and cross-platform repurposing.

Use this Skill: https://skilld.dev/gh/simota/agent-skills/tome

This session only. Nothing lands on disk.

referenceoutput-templates.md

≈3.2k tokens on demand. Your agent reads this file only when SKILL.md points to it.

Output Templates

Purpose: Detailed templates and guidelines for each output format. Read when: Deciding document structure or format during COMPOSE phase.


Learning Document Template (Standard)

# [Change Title] — Learning Document

## Meta
| Field | Value |
|-------|-------|
| Target | [commit hash / PR #number / branch name] |
| Date | YYYY-MM-DD |
| Audience | [beginner / intermediate / advanced] |
| Related files | [primary file list] |
| Change volume | [+XX / -YY lines, ZZ files] |

---

## Overview
[1-3 sentences describing the full picture: what changed, why, and how]

---

## Glossary
| Term | Definition | Context in this change |
|------|-----------|----------------------|
| [Term 1] | [General definition] | [Specific meaning/usage in this change] |

---

## Background (Why)

### Problem Solved
[Problem/issue that existed before the change]

### Motivation / Trigger
[What prompted this change — bug report, performance issue, new requirement, etc.]

### Constraints
[Technical or business constraints that influenced the change]

---

## Change Details (What & How)

### Change Point 1: [Title]

**Before:**
```[language]
// Pre-change code (necessary and sufficient scope)

[Explanation of pre-change behavior/problems]

After:

// Post-change code (highlight diff with comments)

[Explanation of post-change behavior/improvements]

Learning Point:

[General principle or pattern learnable from this change]


Design Decisions (Why This Way)

Adopted Approach

[Description of chosen design/pattern]

Reasons for selection:

  1. [Reason 1]
  2. [Reason 2]

Alternatives Considered

Alternative Summary Rejection Reason
[Option A] [Summary] [Why not adopted]
[Option B] [Summary] [Why not adopted]

Anti-patterns (Why Not)

❌ [Pattern to Avoid 1]

// Code example of what NOT to do

Why to avoid: [Technical reason, potential problems] Instead: [Reference to the correct approach]


Flow Diagram

[Diagram showing how the change affects system flow]
[Mark changed portions]

Summary & Lessons

General Takeaways

  1. [Lesson 1: principle applicable beyond this project]
  2. [Lesson 2]

Project-specific Notes

  • [Note 1]

References

  • [Link 1]

---

## Glossary Template

Lightweight format focused on terminology:

```markdown
# [Target] — Glossary

| Term | Category | Definition | Usage in Code | Related Terms |
|------|----------|-----------|--------------|---------------|
| [Term] | [pattern/library/concept/api] | [Definition] | `[code usage]` | [Related] |

Decision Record Template

Tome supports three ADR formats. Pick by decision weight, not by team preference — small reversible decisions in MADR-full waste reviewer attention; large architecture moves in Y-statement under-document the trade-offs.

Format selection

Format When to use Source
Y-statement (one-sentence) Reversible decision whose rationale fits one sentence; can be written in ~90 seconds adr.github.io/adr-templates — Y-statement
Nygard (Context/Decision/Consequences) Classic short ADR; ~1 page; default for most teams Michael Nygard 2011 — Documenting Architecture Decisions
MADR 4.0.0 (full) Multi-option weighing with explicit pros/cons; needs Confirmation step (how the decision is validated) adr.github.io/madr — MADR 4.0.0 released Sept 2024

Y-statement (lightweight default)

In the context of <use case / system component>, facing <concern / requirement>, we decided for <option> and against <rejected alternatives>, to achieve <benefits>, accepting <downsides / trade-offs>.

One sentence. Store inline in code, in a wiki page, or as an ADR file. Pair with Nygard/MADR for decisions large enough to need full Context and Pros/Cons sections — Y-statement is the default, not the only option. [Source: medium.com/olzzio — Y-statements by Olaf Zimmermann]

Nygard short ADR

# ADR-[number]: [Decision Title]

## Status
[Proposed / Accepted / Deprecated / Superseded]

## Context
[Background and situation requiring the decision]

## Decision
[Chosen option and rationale]

## Consequences
[Impact and trade-offs of this decision]

## Related Commits
- [commit hash]: [description]

MADR 4.0.0 full template

MADR 4.0.0 (released Sept 2024, current as of 2026-05) is the maintained successor to MADR 3.x. Key changes vs 3.x: Validation renamed to Confirmation and nested under Decision Outcome; Deciders renamed to Decision Maker(s). [Source: github.com/adr/madr/releases — MADR 4.0.0]

---
# These are optional metadata elements. Feel free to remove any of them.
status: "{proposed | rejected | accepted | deprecated | superseded by ADR-NNN}"
date: YYYY-MM-DD
decision-makers: [list of everyone involved in the decision]
consulted: [list of people whose opinions were sought; two-way communication]
informed: [list of people kept up-to-date; one-way communication]
---

# [short title, representative of solved problem and found solution]

## Context and Problem Statement
[Describe the context and problem statement in 2-3 sentences. You may want to articulate the problem as a question and add links to collaboration boards or tickets.]

## Decision Drivers
- [driver 1, e.g., a force, facing concern, ...]
- [driver 2, ...]

## Considered Options
- [option 1]
- [option 2]
- [option 3]

## Decision Outcome
Chosen option: "[option N]", because [justification — addresses a decision driver | resolves a force | comes out best (see Pros and Cons of the Options below)].

### Consequences
- Good, because [positive consequence, e.g., improvement of one or more desired qualities]
- Bad, because [negative consequence, e.g., compromising one or more desired qualities]

### Confirmation
[How will the implementation of this ADR be confirmed? E.g. by review, by ArchUnit test, by automated check in CI.]

## Pros and Cons of the Options

### [option 1]
- Good, because [argument a]
- Good, because [argument b]
- Neutral, because [argument c]
- Bad, because [argument d]

### [option 2]
- Good, because [argument a]
- Bad, because [argument b]

## More Information
[Links, related ADRs (`Supersedes: ADR-NNN` / `Superseded-by: ADR-MMM`), related commits.]

Supersession rule: when an Accepted ADR must change, write a NEW ADR that supersedes it and link both directions. Never edit the accepted original — preserving the reasoning trail is the point. [Source: adr.github.io; AWS Prescriptive Guidance — ADR process]


Tutorial Template

Step-by-step reproducible walkthrough:

# [Title] — Tutorial

## Prerequisites
- [Required knowledge 1]
- [Required tools/environment]

## Goal
[What the reader will be able to do after completing this tutorial]

## Steps

### Step 1: [Title]
[Explanation]
```[language]
// Code to execute

Verify: [Expected result]

Step 2: [Title]

[Repeat same structure]

Common Mistakes

Mistake Symptom Correct Approach
[Mistake 1] [Error message etc.] [How to do it right]

Extension Exercises

  • [Challenge 1]
  • [Challenge 2]

---

## Learning Series Template (Batch Mode)

Serialized episodes across multiple PRs/commits:

```markdown
# [Series Title] — Learning Series

## Series Overview
| Field | Value |
|-------|-------|
| Scope | [PR #1, #2, #3 / branch / sprint] |
| Episodes | [count] |
| Date range | YYYY-MM-DD — YYYY-MM-DD |
| Audience | [beginner / intermediate / advanced] |
| Theme | [What ties these changes together] |

## Series Map
| Episode | Target | Title | Key Concept |
|---------|--------|-------|-------------|
| 1 | PR #XX | [Title] | [Core concept] |
| 2 | PR #YY | [Title] | [Core concept] |

---

## Episode 1: [Title]
**Target:** [commit/PR ref]
**Prerequisite episodes:** None

[Standard learning document sections: Overview, Glossary, etc.]

### Connection to Series
- **Builds on:** [previous episode concepts, if any]
- **Leads to:** [what the next episode will cover]

---

## Episode 2: [Title]
[Repeat structure]

---

## Series Summary
### Concept Progression
[How understanding builds across episodes]

### Knowledge Graph
[Concept relationships across all episodes — hand off to Canvas for visualization]

Incremental Update Template

Delta-only document comparing against a previous learning document:

# [Component/Feature] — Incremental Update

## Meta
| Field | Value |
|-------|-------|
| Previous doc | [path/ref to previous learning doc] |
| Previous target | [original commit/PR] |
| Current target | [new commit/PR] |
| Date | YYYY-MM-DD |
| Audience | [level] |

---

## What Changed Since Last Document

### Added Knowledge
[New concepts, patterns, or decisions not present in previous doc]

### Changed Decisions
| Decision | Previous | Current | Reason for Change |
|----------|----------|---------|-------------------|
| [Decision] | [Old approach] | [New approach] | [Why it changed] |

### Deprecated Patterns
[Patterns from previous doc that are no longer valid]

### Unchanged (Reference)
[Brief pointer to previous doc sections that remain valid]

---

## Updated Glossary
[Only new or changed terms — reference previous doc for unchanged terms]

## Quality Scorecard
[Standard scorecard]

Quality Scorecard Template

Attach at the end of every deliverable:

## Quality Scorecard

| Axis | Score | Evidence |
|------|-------|----------|
| Fact/Inference Ratio | [A/B/C] | [X inferences labeled out of Y total claims] |
| Term Coverage | [A/B/C] | [X/Y first-occurrence terms defined] |
| Before/After Pairs | [A/B/C] | [N code comparison pairs included] |
| Why Not Depth | [A/B/C] | [N alternatives with rejection reasons] |
| Audience Fit | [A/B/C] | [Audience: level, detection: method, confidence: H/M/L] |

**Overall:** [PASS if no C scores / REVISION NEEDED if any C]

Depth Adjustment Guidelines

Beginner additions

  • Add "Background: [Concept]" sections explaining framework/language basics
  • Link to official documentation
  • Include comprehension checks: "Can you explain this concept in one sentence?"

Advanced compression

  • Omit term definitions for standard industry vocabulary
  • Focus on trade-off analysis, architecture impact, and alternative approaches
  • Use concise technical prose without step-by-step elaboration

Quality Scorecard

Attach at the end of every learning-document deliverable. Each axis scores A (excellent) / B (adequate) / C (needs improvement). Publication recipes use the Article package requirements instead.

Axis Criteria A B C
Fact/Inference Ratio Labeled inferences ÷ total claims All inferences labeled Most labeled Unlabeled inferences present
Term Coverage Defined terms ÷ first-occurrence technical terms 100% >= 80% < 80%
Before/After Pairs Number of code comparison pairs >= 2 pairs 1 pair 0 pairs
Why Not Depth Alternatives section presence and quality 2+ alternatives with rejection reasons 1 alternative Missing or superficial
Audience Fit Vocabulary level matches declared audience Consistent throughout Minor mismatches Significant mismatch

Minimum threshold: Revise before delivery when a C reflects a substantive gap (e.g., missing Why-Not section, unlabeled inferences). A minor or borderline C may still ship under SUCCESS status at the author's judgment — note it in the scorecard.


Format-Specific Requirements

  • decision_record: Select one of three formats by decision weight — Y-statement, Nygard (Context → Decision → Consequences), or MADR 4.0.0 (see Recipes table and reference/output-templates.md); declare Status (Proposed | Accepted | Deprecated | Superseded); one decision per record; on supersession, create a new record and link Supersedes / Superseded-by (never edit the accepted original). [Source: adr.github.io; github.com/adr/madr/releases; Microsoft Azure Well-Architected Framework — ADR]
  • tutorial: Frame around a guided learning encounter with a concrete success moment the learner reaches; keep the path linear, not branching. [Source: diataxis.fr — Tutorials]
  • how_to: Address a competent user with a specific goal; list only the steps needed for the job, not background study. Branching is fine where the task genuinely branches. [Source: diataxis.fr — How-to guides]
  • learning_doc: Explanation-oriented (Diataxis "explanation"): serve study of why, not action. Separate from reference material. [Source: diataxis.fr — Explanation]

Source: SKILL.md on GitHub

No alerts13d4 checks · Risk SAFE
  • Gen Agent Trust Hub13d

    The 'tome' skill is a technical documentation and article authoring tool designed to convert git changes and raw source material into structured learning assets. It incorporates robust safety standards, such as a strict 'Documents only' policy and mandatory masking of sensitive information like credentials and client details. While the skill processes external data, it includes explicit mechanisms to prevent the execution of untrusted instructions, ensuring a secure environment for technical writing.

  • Socket13d

    No alerts

  • Snyk13d

    Risk: LOW · No issues

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at 35ffd55. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 3 days ago.

Activeupdated 2 weeks ago

README badge

README badge for simota/agent-skills/tome