Skip to content

Roadmap: Gas Town adoption — FrameBead for CVs, hook-based resume, CV-tailoring molecule #111

Description

@ojfbot

Parent RFC

ojfbot/core#15 — RFC: Frame × Gas Town

cv-builder's scope

cv-builder adopts FrameBead (cv- prefix) for work items, gains hook-based session resume, and gets a cv-tailoring molecule for its core workflow. All primitives come from @core/workflows — cv-builder is a consumer, not an owner.

Dependency: ADR-0009 (FrameBead) must land in core before Sprint 1 work here.


Sprint 1 — FrameBead (cv- prefix)

  • Install FrameBead from @core/workflows when ADR-0009 lands
  • cv- prefix — all cv-builder work items use this prefix
  • CV version beads — each generated CV variant stored as FrameBead { type: 'cv' }; body = JSON/markdown of the CV content
  • Job application beads — each job application context stored as type: 'task'
  • BeadStore wired to Express API — replaces any in-memory or filesystem stores

Acceptance criteria

CV variants are beads. GET /api/beads?type=cv returns all generated CVs. Beads survive server restart.


Sprint 2 — AgentBead + prime node

  • cv-builder witness AgentBeadcv/witness-001 created on first graph init
  • prime node — entry node for cv-builder's LangGraph agent-graph
    • Reads cv-builder witness AgentBead
    • Checks hook: if a job-posting bead is on the hook, routes to tailor_cv immediately
    • Reads unread mail
    • Otherwise: await_input
  • Hook persistencepackages/agent-graph/hooks.json

Acceptance criteria

User asks agent to "tailor my CV for this job posting". Work bead created. Browser closed before completion. Reopened. Agent resumes tailoring without being asked again.


Sprint 3 — cv-tailoring molecule

  • cv-tailoring.toml formula — steps: analyse_job → gap_analysis → tailor_sections → review → export
    • Each step has acceptance criteria
    • Each step's output recorded in molecule bead
  • Molecule progress visible in UI — sidebar shows current step + checkmark on completed steps
  • Crash recovery — kill server between steps → restart → resumes at last completed step

Acceptance criteria

User starts a CV tailoring workflow. Kills the dev server at step 3. Restarts. Agent says "I was in the middle of tailoring your skills section — continuing now."


Sprint 4 — Mail + handoff

  • Handoff on context limit — when cv agent's context approaches limit, writes handoff summary bead to its own mailbox
  • Handoff on browser close — same pattern, triggered by beforeunload
  • Next session — prime node reads handoff mail, greets with summary of prior work

Documents required before Sprint 1

  • ADR-0009: FrameBead (core — must land first)
  • ADR-0010: AgentBead + hooks (core — must land first)

Run /gastown audit to check current state

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions