agentsclimarketplace

Full engagement pipeline

Skill cynco-labs/ai-accounting-skills/accounting-engagement/skills/full-engagement-pipeline

Agent-native accounting skills for Claude Code — folder dump → books → Beancount + Fava. MPERS, smart intake, hard gates.

Install
npx -y skills add cynco-labs/ai-accounting-skills --skill full-engagement-pipeline

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 29 days oldThe repository was created 29 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Default for throw-work: dump a folder, "do the accounting", "sort my books", year end, prepare financial statements / MPERS pack without naming a stage. One intake then books; resumes from engagement_state.json. Depth-scoped done.

SKILL.md

6.7 KB, ~1.7k tokens by cl100k_base, as published. Nobody here has run it

Full engagement pipeline (agent-native entry)

Purpose

Default when the human does not name a stage.
User short name: /do-books. Natural language: “do the accounting.”

You are an engagement manager — not a slash menu.

  1. Find docs (cwd, @ paths, multi-folder)
  2. One intake — shelf + register + state + ≤3 asks
  3. Run books (extract → classify → post → recon → TB)
  4. Go deeper only if engagement_type needs it
  5. Stop cleanly on blockers; depth-scoped Done when

Load first (keep light)

  1. shared/runtime-brief.md — mandatory one-screen rules (read fully)
  2. Firm profile if present (quiet defaults — no firm interview on a personal dump)
  3. Active stage skill body only (one at a time)

Open deeper docs on demand (table in runtime-brief). Do not preload kernel + shelf + operator + guardrails + … before the first file list.

Intent router

SignalRoute
Resume + engagement_state.jsonContinue at progress; skip re-intake
Folder dump / “do accounting”This pipeline (intake → books)
Only bank recon / classify / tax / revenue / capexThat narrow skill
“Set up the firm” onlycold-start-interviewnot on client dumps

Folder-dump rule: no blank questionnaire. Shelf → soft-confirm → extract same session.

One intake (replaces separate shelf / setup / source ceremonies)

Do once at job start (or when new unsorted files arrive):

StepActionArtifact
Discovercwd + user paths onlyworking list
Job mapmulti-entity → pick activeshow table if >1
Shelfclients/<slug>/source/**copy or pointer
Registercoverage matrixsource/register.md
Stateoperator + engagement_type + stageengagement_state.json
Soft-confirmentity + period-on-diskstructured tool ≤1
Extract startfrom shelftransactions.json underway

Detail if needed: shared/shelf-first.md · shared/smart-intake.md · client-workspace.
Do not run client-workspace → smart-intake → engagement-setup → source-documents as four user-facing rounds.

Skills source-documents / engagement-setup only verify artifacts if something is missing.

State

Path: clients/<slug>/engagement_state.json
Schema: references/engagement_state.schema.json

On start

IF engagement_state.json exists:
  load → ensure operator + engagement_type
  status board (six jobs) → resume work
ELSE:
  one intake (above) → books

After each advance

  1. Write artifacts · gate check
  2. Update state (current_stage may be fine-grained internally)
  3. Status board in six jobs for the human
  4. updated_at ISO-8601

Status board (user-facing)

## [Legal name] · [period] · books only | year-end
| Step | Status | Notes |
|---|---|---|
| Organize | Done | Folder ready |
| Extract | Done | N bank lines |
| Classify | Needs you | structured options above |
| Post | Next | Journals + trial balance |
| Present | HTML pack | outputs/<slug>_pack.html |
| Prove | Later | depth_gates --strict |

**I need from you:** … (question tool — not a queries.md dump)
**Read:** open the HTML pack — not a stack of .md files
**Next from me:** …

Plain language for operator: owner. No internal stage keys for owners.

Work sequence

A — Books (default path — almost everyone)

#WorkHowGate
1Extractextract-bank-statement / npx … extractlines + balance proof
2Classifyclassify-transactions (+ substance if standards_aware)codes or queries
3Postpost_journals.pyJEs balance
4Bank reconbank-reconciliationdiff 0.00 or limitation
5Prelim TBroll_tb.py --preliminary onlyDR=CR
6HTML packgenerate_html_report.pyoutputs/*_pack.html (required)

bookkeeping_only → STOP here after HTML pack.
Say: books ready · open the HTML path.
Optional only: Beancount export · Fava (explore, not handoff).

B — Deeper (only if engagement_type says so)

WhenWork
year_end / compilation / year_end_taxYE journals → adjusted TB → standards review → primaries → notes → QC → finalise
year_end_tax+ tax from locked figures
User asked FSupgrade type, then B

Subledgers: only if material balances exist — not a ritual empty stage.

C — Ledger (optional anytime books balance)

export-beancountopen-fava if user wants UI.

Orchestration rules

  1. Disk is truth
  2. Stop on true blockers (TB≠0, bank≠0 without limitation)
  3. Structured asks only for gates (shared/user-questions.md)
  4. Scripts for math — never type TB totals
  5. Partial runs OK (“stop after TB”)
  6. CLI is for the agent; narrate outcomes to the user

Depth & classify

engagement_typeclassify_depthPresent/prove
bookkeeping_onlybookkeeping (unless user wants proper classifications)no FS pack required
year_end / compilation / year_end_taxstandards_awarefull pack

Done when (depth-scoped)

Machine check (required before status: done):

python3 scripts/depth_gates.py <client> --strict
# or close:
python3 scripts/close_engagement.py <client> --no-export-ledger
Claimed depthRequired (see references/depth_gates.json)
bookkeeping_onlyregister · txns · journals · bank recon · prelim TB · HTML pack
year_end / compilationbooks + YE · ATB · primaries · notes · QC Section A · HTML
year_end_taxyear-end + tax computation
User early stopState + limitation note; do not claim full YE complete

On books-only green: open HTML pack + “books ready” — do not chase FS/QC.
Forbidden: forcing YE pack on a books-only dump.
Forbidden: status: done when depth_gates --strict fails.
Forbidden: handoff is a list of .md files.

Failure modes

FailureBehavior
No entity nameInfer; soft-confirm; extract in parallel
Partial monthsBook them fully; no stall for 12 months
Agent loads 10 doctrine files firstUse runtime-brief only
Agent re-runs full setup every turnResume from state
Agent pressures full yearForbidden

Output language

  • owner: plain; six-job board
  • bookkeeper: process + light codes
  • firm: technical OK on staff channel
  • Never dump slash walls at end users

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.