Local-first consulting CRM for AI workflow pilots.

Import synthetic or private lead CSVs, score fit, generate delivery artifacts, track review readiness, and keep case-study drafts behind an explicit approval gate.

CSV intakeLead rows stay local.
SQLite stateWorking data lives in .local.
Fit scoringOffer recommendation is deterministic.
Review packetArtifacts are summarized for handoff.
Approval gateCase-study export is blocked by default.

Built for a cautious operator

The repo keeps the useful consulting loop without creating a hosted customer system. It is meant for local review, repeatable demos, and safe portfolio inspection.

Anonymized by default

Public status views and exports use aliases such as Client 1 instead of raw contact identity.

No external API

The CLI uses Python standard library modules and writes local SQLite/Markdown/JSON artifacts.

Preview-only exports

Obsidian-style notes are restricted to preview/local output paths rather than live vaults.

Operational surface

Area Commands Boundary
Intake import-leadsscore-leadslist-leads Reads CSV, stores a local hash, exposes anonymized aliases.
Delivery generate-proposalgenerate-delivery-reportgenerate-followup Writes Markdown artifacts under local output paths.
Review validate-projectwhat-remainsexport-review-packet Creates readiness summaries for human review before sharing.
Case study approve-case-studyrevoke-case-study-approvalexport-case-study Blocks draft export until approval is explicitly recorded.