Skip to content
Back to skills

Slice

ASecurity

Use when code-changing intent has emerged and there is no governing slice yet — to scope the change into a slice (scope document + metadata) before any design or implementation. Routed to from /route.

  • 2 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 19, 2026
developmentgogit

Security analysis

A100/100

Scanned September 29, 2026

npx -y skills add davidlee/doctrine --skill slice --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Slice?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Slice
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/davidlee-slice/badge)](https://www.skillsdirectory.com/skills/davidlee-slice)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: slice
description: Use when code-changing intent has emerged and there is no governing slice yet — to scope the change into a slice (scope document + metadata) before any design or implementation. Routed to from /route.
---

# Slice

You are converting intent into a concrete, scoped unit of change. A slice is one
coherent change — not a project-global decision (that is an ADR) and not
evergreen spec material (`.doctrine/spec/`).

## Process

1. **Confirm the frame.** Code-changing intent, and no governing slice already
   covers it. Pull the constraints first: `/canon` for ADRs and `.doctrine/spec/tech/`, and
   conventions; `/retrieve-memory` for subsystem gotchas on the surface you will
   touch.

2. **Create the slice:**

   ```
   doctrine slice new "<title>" [--slug <slug>]
   ```

   Allocates the next id and scaffolds `slice-nnn.toml` (metadata, relations,
   lifecycle status — starts at `proposed`) + `slice-nnn.md` (scope document).

3. **Make scope explicit** in `slice-nnn.md`:
   - what changes, and why
   - in scope vs out of scope (name the boundary)
   - affected surface — concrete paths / modules
   - risks, assumptions, open questions
   - verification / closure intent — how "done" will be judged

   Seed the affected surface as **coarse `scope-relevant` selectors** — a rough
   path/glob fence on where the change lives, captured now while scope is fresh:

   ```
   doctrine slice selector add <id> "src/foo/**" "src/bar.rs" --intent scope-relevant
   ```

   These are intentionally loose (the exact touch-set is `/design`'s job). They
   feed the audit-time `slice conformance` delta; an unfenced slice has nothing to
   diff git actuals against.

4. **Record structure** in `slice-nnn.toml`: metadata, lifecycle status. Honour
   the storage rule — structured data in TOML, prose in MD, never queried/derived
   data in prose. **Relations are written with `doctrine link`, not hand-authored
   rows** — it validates the pair against `RELATION_RULES` (the legal vocabulary;
   `lib:reference/using-doctrine.md` § Relating entities). e.g. `governed_by`
   an ADR, `specs` a
   spec, `supersedes` a prior slice.

5. **Check the altitude.** If the work is really a project-global decision →
   `doctrine adr new`. If it is evergreen specification → author a tech spec (`doctrine spec new tech`) or a product spec (`doctrine spec new product`).
   Keep the slice to one shippable change; split if it sprawls.

## Next

You MUST shape the design before planning: record the lifecycle move
(`doctrine slice status <id> design` — bare number) and hand off to `/design`.
Do not jump to `/plan` or `/execute` from a bare slice — `/route`'s gate forbids
it. If genuine tradeoffs or unknowns surface while scoping, `/consult`.

Before `/design`, run the pre-design research round per `/research`, so the
design load-bears on a cited artefact rather than recall.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.