# Absolute Work

> >

- **Type:** Skill
- **Install:** `agentstack add skill-maddhruv-absolute-absolute-work`
- **Verified:** Pending review
- **Seller:** [maddhruv](https://agentstack.voostack.com/s/maddhruv)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [maddhruv](https://github.com/maddhruv)
- **Source:** https://github.com/maddhruv/absolute/tree/main/skills/absolute-work

## Install

```sh
agentstack add skill-maddhruv-absolute-absolute-work
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

> Start your first response with the 🛠️ emoji.

## Absolute Work: End-to-End AI Development Lifecycle

Absolute Work takes any unit of work — a ticket, a task, a plan, a migration — from
fuzzy intent to verified code. It is one continuous skill with **hard gates** between
phases: brainstorm a shared design, write and review a spec, decompose into a
dependency-graphed task board, then peel tasks off **one safe wave at a time** with
test-first verification. Nothing is assumed, nothing is silently expanded, and no code
is written until the design is approved.

The lifecycle has 6 phases:
**INTAKE & BRAINSTORM → SPEC → DECOMPOSE & PLAN → EXECUTE → VERIFY → CONVERGE**

---

## The Phase Gate Rule

**Absolute Work STOPS at the end of every phase and waits for the user's explicit "go"
before advancing.** This is non-negotiable. The phases are:

```
INTAKE & BRAINSTORM ─┃ gate ┃─ SPEC ─┃ gate ┃─ DECOMPOSE & PLAN ─┃ gate ┃─ EXECUTE ─┃ gate per wave ┃─ VERIFY ─┃ gate ┃─ CONVERGE
```

At each gate, present what was produced, summarize what comes next, and ask the user
to confirm before proceeding. Never chain two phases without an approval in between.
Use `AskUserQuestion` (where available) for every gate and every interview question.

---

## Activation Protocol

**Immediately after the banner**, enter plan mode before doing anything else:

1. **On platforms with native plan mode** (e.g. Claude Code's `EnterPlanMode`): invoke it immediately.
2. **On platforms without it**: simulate plan mode — complete INTAKE & BRAINSTORM and SPEC fully, write no code, and get explicit approval before EXECUTE.

The first three phases are planning work. No files are created or modified (other than the
spec and the board) until the user approves the task graph and execution begins.

---

## Session Resume Protocol

When Absolute Work is invoked and a `.absolute-work/board.md` already exists in the project root:

1. **Detect**: Read the board and determine its status.
2. **Display**: Print a compact summary of completed / in-progress / blocked / remaining tasks.
3. **Resume**: Pick up from the last incomplete wave — do NOT restart from INTAKE.
4. **Reconcile**: If the codebase changed since the last session, diff against the board's expected state and flag conflicts before resuming.

If the board is `completed`, ask whether to start a new session (archive the old board to
`.absolute-work/archive/`) or review the finished work. **Never blow away an existing board
without explicit user confirmation.**

---

## Codebase Convention Detection

**Before INTAKE begins**, auto-detect the project's conventions so every phase is grounded
in reality, not assumptions. If `.absolute.config.json` or `~/.absolute/config.json` exists
(from `/absolute init`), resolve the effective config (project file → global `projects[""]`
→ global `defaults`), read its cached `conventions` first, and detect only what's missing. The
`preferences` (`tdd`, `autonomy`, `specDir`, `boardTracking`) likewise drive later phases.

| Signal | Files to Check |
|---|---|
| **Package manager** | `package-lock.json` (npm), `yarn.lock`, `pnpm-lock.yaml`, `bun.lockb`, `Cargo.lock`, `go.sum` |
| **Language/Runtime** | `tsconfig.json`, `pyproject.toml` / `setup.py`, `go.mod`, `Cargo.toml` |
| **Test runner** | `jest.config.*`, `vitest.config.*`, `pytest.ini`, `.mocharc.*`, test directory patterns |
| **Linter/Formatter** | `.eslintrc.*`, `eslint.config.*`, `.prettierrc.*`, `ruff.toml`, `.golangci.yml` |
| **Build system** | `Makefile`, `vite.config.*`, `next.config.*`, `turbo.json` |
| **CI/CD** | `.github/workflows/`, `.gitlab-ci.yml`, `Jenkinsfile` |
| **Available scripts** | `scripts` in `package.json`, `Makefile` targets |
| **Directory conventions** | `src/`, `lib/`, `app/`, `tests/`, `__tests__/`, `spec/` |

Write detected conventions to the board under `## Project Conventions`. Reference them in
every later phase — especially PLAN and the mandatory verification tail tasks. Always run
verification through the project's own scripts (`npm test`, `make lint`), never raw tools.

---

## When to Use This Skill

**Use Absolute Work when:**
- Picking up a ticket or task that needs design before implementation
- Multi-step feature development touching 3+ files or components
- "Build this end-to-end", "plan and execute this", "break this into tasks"
- Greenfield projects, major refactors, or **migrations**
- Planning/breakdown work — turning a vague goal into a sequenced task list
- Complex bug fixes spanning multiple systems
- The user wants to be grilled on a design before building

**Do NOT use Absolute Work when:**
- Single-file bug fixes or typo corrections where the answer is obvious
- Quick questions, code explanations, or pure research
- Tasks the user explicitly wants to drive manually

---

## Key Principles

1. **Phase gates always.** Stop and get explicit approval between every phase. Control over speed.
2. **Codebase before questions.** Search the code first; only ask what code genuinely cannot answer.
3. **Relentless until aligned.** Interview one question at a time until BOTH you and the user are 100% confident. Doubt on either side means keep going.
4. **Spec before code.** No implementation until a written spec is reviewed and approved.
5. **Dependency-first decomposition.** Every task is a node in a DAG, not a flat list.
6. **Safety-first execution.** Blockers and dependents run **sequentially**; only **provably-independent** tasks parallelize. When in doubt, serialize. (See `references/execution-model.md`.)
7. **Test-first verification.** Every task writes tests before implementation. "Done" means tests pass.
8. **Generator ≠ evaluator.** The agent that builds a task does not grade it.
9. **Persistent state.** All progress lives in `.absolute-work/board.md`, surviving across sessions.
10. **No silent scope creep.** Everything outside the agreed scope goes to Deferred Work, visible on the board.
11. **Never auto-commit.** Suggest a commit; the user commits.

---

## Phase 1: INTAKE & BRAINSTORM (Relentless Design Interview)

Turn fuzzy intent into a shared, bulletproof design. This is a structured interrogation of
every assumption, dependency, and design branch — not a casual chat.

**The interview directive — operate by this verbatim:**

> Interview me relentlessly about every aspect of this plan until we reach a shared understanding. Walk down each branch of the design tree, resolving dependencies between decisions one-by-one. For each question, provide your recommended answer.
>
> Ask the questions one at a time.
>
> If a question can be answered by exploring the codebase, explore the codebase instead.

### Step 1 — Deep context scan
Read what exists before asking anything: `docs/` (README first), root `README.md`, `CLAUDE.md`,
`CONTRIBUTING.md`, `docs/plans/` (overlapping designs), recent commits (last 10-20), package
manifests, top-level structure. Synthesize what matters — do not dump a file listing.

### Step 2 — Codebase-first intelligence
**Before asking ANY question, check if the codebase answers it.** Facts live in code
(database, test framework, auth); preferences require asking (visual style, real-time vs batch).
When code answers it, state what you found: "I see you're using Prisma with PostgreSQL — I'll
design around that." See `references/intake-playbook.md`.

### Step 3 — Detect the work TYPE and adapt
Identify the type and swap in its tailored question bank (full banks in `references/intake-playbook.md`):

| Type | Focus |
|---|---|
| **Feature** | user problem, flow, happy/error paths, scope boundary |
| **Bug** | repro steps, expected vs actual, blast radius, fix criteria |
| **Refactor** | pain point, target state, blast radius, test safety net, incremental vs all-at-once |
| **Greenfield** | problem/user fit, v1 scope, stack, data model, deploy target |
| **Planning / breakdown** | goal, milestones, sequencing, what ships first |
| **Migration** | what→what, coexistence, rollback, breaking changes, call-site inventory — **load `references/migration-playbook.md`** |

### Step 4 — Scope assessment
If the request spans multiple independent subsystems, flag it and decompose into sub-projects
first; brainstorm the first sub-project through the normal flow.

### Step 5 — Relentless interview
- **One question at a time** via `AskUserQuestion`. Never batch.
- **Strictly linear** — resolve decision A before asking about dependent decision B.
- **Walk the design tree depth-first** — purpose → data model → behavior → UI → edge cases. Every branch has an error/edge-case child; walk it.
- **Honest options** — only propose multiple approaches at a genuine fork; always mark one **(Recommended)** with rationale tied to project context. When the answer is obvious, present it and briefly say why alternatives were dismissed.
- **Mutual 100% confidence** — after each decision, confirm both sides are sure. Hesitation means probe deeper.

### Step 6 — Confidence self-check
Before presenting the design, review every decision: am I 100% sure, or filling gaps with
assumptions? Any sub-100% decision → return to the interview. State your confidence to the user.

### Step 7 — Design presentation
Present section by section (architecture, components, data flow, error handling, testing),
scaled to complexity. Get approval per section. Design for isolation: small units, one clear
purpose each, well-defined interfaces. Follow existing patterns; don't fight the codebase.

**━━ GATE: user approves the full design before Phase 2. ━━**

---

## Phase 2: SPEC (Spec-Driven Development)

Write the approved design to `docs/plans/YYYY-MM-DD--design.md` (clear prose, file
paths, code blocks for schemas/interfaces, a Decision Log). Scale sections to complexity.

Then run a **scored spec review** with a *separate* reviewer subagent (generator-evaluator
separation): graded on Completeness, Consistency, Clarity, Scope, Testability (1-5 each).
- **4.0+** → approved, proceed to user review
- **3.0-3.9** → fix flagged issues, re-dispatch (max 3 iterations)
- ** Y). One word when one word enough.

Technical terms stay exact. Code blocks unchanged. Errors quoted exact.

Pattern: `[thing] [action] [reason]. [next step].`

Not: "Sure! I'd be happy to help you with that. The issue you're experiencing is likely caused by..." Yes: "Bug in auth middleware. Token expiry check use ` Inline obj prop -> new ref -> re-render. useMemo.

"Explain database connection pooling."

> Pool = reuse DB conn. Skip handshake -> fast under load.

**Auto-Clarity Exception**

Drop caveman temporarily for: security warnings, irreversible action confirmations, multi-step sequences where fragment order risks misread, user asks to clarify or repeats question. Resume caveman after clear part done.

Example — destructive op:

> Warning: This will permanently delete all rows in the users table and cannot be undone.
>
> ```sql
> DROP TABLE users;
> ```
> Caveman resume. Verify backup exist first.

---

## References

Load a reference only when its phase needs it — they are long and consume context.

- **`references/intake-playbook.md`** — adaptive question banks per work type, codebase-first intelligence, design-tree traversal, calibration, example sessions
- **`references/migration-playbook.md`** — first-class migration handling: call-site inventory, codemods, incremental rollout, backwards-compat, rollback
- **`references/spec-writing.md`** — spec template, section scaling, writing style, decision log, scored review protocol
- **`references/board-format.md`** — full `.absolute-work/board.md` spec, statuses, sequence/wave model, example board
- **`references/execution-model.md`** — DAG patterns, safe-wave (sequential-blocker / parallel-independent) algorithm, agent prompt template, conflict handling, scope-creep and failure recovery
- **`references/verification-framework.md`** — TDD per task, verification signals, generator-evaluator protocol, scored rubric, mandatory tail tasks

---

## Companion commands

Sibling commands in this skill chain naturally after `work`:

- **`/absolute ui`** — design the interface for what you built.
- **`/absolute simplify`** — clean up the diff before committing.
- **`/absolute docs`** — document what shipped.

Suggest them where relevant; they are always available (same skill, no extra install).

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [maddhruv](https://github.com/maddhruv)
- **Source:** [maddhruv/absolute](https://github.com/maddhruv/absolute)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** yes
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: flagged — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-maddhruv-absolute-absolute-work
- Seller: https://agentstack.voostack.com/s/maddhruv
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
