Skip to content

Latest commit

 

History

473 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DraftLoop

CI Node.js pnpm Anthropic OpenAI

DraftLoop turns candidate-owned sources into a job-specific CV with local-first grounding, independent AI critique, and final human control.

It is designed for candidates who want useful drafting assistance without giving up traceability or control of their source material. Claims remain connected to candidate-provided evidence, provider and model identities are visible, and the candidate decides what to approve and export.

Current maturity: DraftLoop v0.8.0-alpha.1 is a released Usable CV MVP alpha. Its bounded capabilities are integrated and deterministically validated, but no representative consented outcome has been recorded. The roadmap and current status record its evidence and remaining gaps. This project is not production-ready.

How DraftLoop works

The workflow keeps the job description and candidate sources in a local workspace, then applies an evidence-grounded evaluator–optimizer workflow: an author generates, an independent critic evaluates against a rubric, and accepted feedback drives bounded revision. The default cross-company pairing is Anthropic as author and OpenAI as critic. ADR 0003 records DraftLoop's adaptation and controls.

flowchart LR
    subgraph Local["Local workspace"]
        Inputs["Approved job requirements<br/>+ candidate sources"]
        Gate["Visible provider-transmission<br/>approval"]
        Author["Grounded author"]
        Critic["Independent evaluator / critic<br/>+ bounded revision"]
        Human["Human review<br/>and approval"]
        Export["Local CV export"]
        Inputs --> Gate --> Author --> Critic --> Human --> Export
    end
    Anthropic["Anthropic<br/>author"]
    OpenAI["OpenAI<br/>critic"]
    Author <-->|"approved context"| Anthropic
    Critic <-->|"approved draft and evidence"| OpenAI
Loading

The loop is an assistant, not an authority. DraftLoop does not independently verify a career, contact past employers, replace interviews, or turn a candidate's source material into permission to invent facts.

Try the v0.8 alpha desktop build

Download the newest release compatible with your platform and its SHA256SUMS file. Desktop packages are distributed as platform-specific ZIP archives, including Windows x64. The releases page is authoritative for the current platform set and release limitations.

To verify one download, replace <downloaded-archive>.zip below with the ZIP you selected and compare that single digest with its matching line in SHA256SUMS:

# Linux
sha256sum "./<downloaded-archive>.zip"

# macOS
shasum -a 256 "./<downloaded-archive>.zip"

On Windows, run (Get-FileHash .\your-download.zip -Algorithm SHA256).Hash in PowerShell and compare that output with the matching SHA256SUMS entry. Extract the matching ZIP and launch the desktop executable from the extracted folder. These are v0.8 alpha packages, not signed installers or dependable real-application tooling; no representative consented outcome has been recorded, and signing and automatic updates remain ahead. The CLI is a separate, source-only interface and has no standalone installer.

Developer quick start

Use Node.js 24.5.0 and pnpm 10.18.3:

pnpm install --frozen-lockfile

Start the desktop shell and choose Try demo workspace to exercise the deterministic fixture workflow:

pnpm --filter @draft-loop/desktop start

Fixture mode is offline and uses no provider spend. To inspect the source-only CLI:

pnpm --filter @draft-loop/cli start --help

Every command group — opportunity briefs, candidate profiles, writing policies, and candidate knowledge bases — is documented with runnable examples in the CLI and desktop operations reference.

Live use requires an explicit provider-transmission approval in the workspace, configured provider credentials, and may incur provider cost. Keep real candidate material out of the repository.

For the normal quality gate, run:

pnpm format:check
pnpm lint
pnpm typecheck
pnpm test
pnpm validate

Technology and architecture

Area Technology or boundary
Runtime TypeScript, Node.js 24.5.0, pnpm 10.18.3
User interfaces React 19, Vite, Electron 43; source-only Commander CLI
Product core Framework-free domain contracts, Zod schemas, orchestrator ports
Providers Explicit Anthropic and OpenAI SDK adapters
Local data and output SQLite via Drizzle ORM; Markdown, PDF, and DOCX exports
Quality Biome, ESLint, Markdownlint, Vitest, GitHub Actions
flowchart LR
    UI["CLI / Desktop"] --> Core["Shared application and core<br/>evaluator–optimizer workflow"]
    Core --> Local["Local SQLite<br/>run history + exports"]
    Core --> Adapters["Provider adapters"]
    Adapters --> Anthropic["Approved Anthropic<br/>author route"]
    Adapters --> OpenAI["Approved OpenAI<br/>critic route"]
    CKB["Portable CKB component<br/>(basic controls + binding)"] --> Core
Loading

The portable Candidate Knowledge Base (CKB) component can store approved local source versions. CLI and desktop adapters can create, open, list, and inspect stores; workspaces can also bind explicit store/base snapshots with drift checks. Retrieval does not yet consume those snapshots, so the existing workspace evidence path remains authoritative for application runs.

Trust boundary

  • Source material, run history, and exports are local by default.
  • A provider receives only context covered by an explicit user approval; the workspace shows the provider, model, transmission scope, and retention choice.
  • Independent review is a product constraint: the default author and critic use different provider companies, and their identities are recorded.
  • DraftLoop prepares local artifacts. It does not submit applications, publish documents, send messages, or perform uncontrolled web research on a user's behalf.

Documentation

Human approval is mandatory before an artifact is exported. DraftLoop can help prepare a CV, but the candidate remains responsible for factual review, final approval, and every action outside the local workspace.

About

Local-first agentic CV workspace with cross-provider author–critic review

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages