Skip to content

Add /lc-report skill: author MyST reports referencing ASTRA elements by path#158

Closed
EiffL wants to merge 1 commit into
mainfrom
lc-report-skill
Closed

Add /lc-report skill: author MyST reports referencing ASTRA elements by path#158
EiffL wants to merge 1 commit into
mainfrom
lc-report-skill

Conversation

@EiffL

@EiffL EiffL commented Jul 5, 2026

Copy link
Copy Markdown
Member

Context

PR #156 removed ASTRA's narrative field (astra-spec RFC-0002): rich write-ups now live as external reports that reference analysis elements by tree-path. PR #157 added the report scaffold to lc init (index.md + myst.yml wired to the MySTRA plugin) and explicitly deferred the authoring skills — this PR is that follow-up. Where we previously enforced building the narrative: block, the agent now naturally builds the MyST report.

New skill: /lc-report

claude/lightcone/skills/lc-report/ — authored against the MySTRA docs and Anthropic's skill best practices (specific third-person trigger description, SKILL.md as a concise overview, progressive disclosure into references/ one level deep, a validate→fix→rebuild feedback loop, single recommended path).

  • SKILL.md (~100 lines): the three-layer model (data = spec/results, composition = report pages, presentation = theme); the golden rule (never hard-type a measured number, restate a decision, or re-describe an output — reference it by path); setup incl. creating the scaffold when lc init never ran (reproduction workdirs); mode selection; structure & multi-page along sub-analyses; draft order (methods → results → discussion → introduction last); coverage rule; myst build --html validation loop; restrictions & anti-patterns. Writes are locked to report pages + myst.yml.
  • references/mystra-syntax.md: the exact MySTRA grammar — path grammar, {astra} role/directive (with options tables), {astra:ref}, {astra:cite}[:t], {astra:value} (col/where/pm/err/sig), anchors, registries, multi-page astra_scope, minimal myst.yml (with version-pinning note), build commands, and how every breakage renders ([mystra] warnings, error admonitions, ⟨value: …⟩ tokens).
  • references/craft.md: the prose discipline ported from the retired narrative skill, re-expressed for the MyST surface — references-as-citations, decision vs. selection ({astra} vs {astra:value} on decisions), navigable data flow, length-as-compressor, real-subjects-real-verbs, anti-patterns.
  • references/paper-reproduction.md: reproduction mode — paper→report mapping table, paraphrase/confidence-register/voice-seam rules, divergence reporting sourced from REVIEW's open-question resolutions, four-audit critique pass.

The three-mode model (paper reproduction / co-drafting / retrofit) survives from the old skill; the two former stub references are folded into SKILL.md as concise guidance instead of shipping near-empty files.

Wiring

  • lc-from-paper: REVIEW close-out gains Step 4 — author the MyST report with /lc-report (steps renumbered; outputs, survey signals, phase table, and close-out summary updated). REPRODUCTION-SUMMARY.md stays the concise record; the MyST report is the rich, publication-shaped companion.
  • lc-new (Done) and lc-from-code (Phase 3) now point the user at /lc-report at the natural moment.
  • astra reference skill: the Description section notes that rich write-ups live in external MyST reports.
  • session-start primer: drops the stale "narrative anchors" leftover from Remove ASTRA narrative field from skills; bump astra-tools to 0.2.10 #156 and primes /lc-report.
  • Project CLAUDE.md templates: the inline _PROJECT_CLAUDE_MD and the lc init index.md stub mention /lc-report; the bundled claude/lightcone/templates/CLAUDE.md gains the ## Report section it was missing (it had diverged from the inline template).
  • Docs: docs/skills/lc-report.md mirror, zensical.toml nav entry, rows in docs/skills/index.md + bundle README, and a /lc-report section in the user guide's agent-workflow page (which previously didn't mention the report at all).

Verification

  • uv run pytest336 passed; ruff + mypy clean (the commands.py change is string-only and existing template tests still pass).
  • just docs builds clean and emits /skills/lc-report/.
  • SKILL.md frontmatter parses (name/description/allowed-tools).
  • Repo-wide grep: no remaining ASTRA-field uses of "narrative" (leftover hits are general-English).

🤖 Generated with Claude Code

The removed narrative field (PR #156, astra-spec RFC-0002) is replaced by
external MyST reports resolved by the MySTRA plugin; lc init now scaffolds
the template (PR #157). This adds the authoring skill that teaches the
agent to build those reports, and wires it through the bundle.

- New lc-report skill: golden rule (reference, never restate), setup,
  three modes (paper reproduction / co-drafting / retrofit), structure,
  draft order, and a myst-build validate loop. References carry the full
  MySTRA syntax, the prose-craft discipline ported from the retired
  narrative skill, and reproduction-mode fidelity rules.
- lc-from-paper REVIEW: authoring the MyST report is now a close-out step
  (Step 4); outputs, survey signals, and phase table updated.
- lc-new (Done) and lc-from-code (Phase 3) point at /lc-report.
- astra reference: Description section notes write-ups live in external
  reports.
- session-start primer: drop stale "narrative anchors", add /lc-report.
- Project CLAUDE.md templates (inline + bundled) and the lc init index.md
  stub mention /lc-report; bundled template gains the missing Report
  section.
- Docs: skills mirror page, nav entry, index rows, agent-workflow section.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@cloudflare-workers-and-pages

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
lightcone-cli d3421b3 Commit Preview URL

Branch Preview URL
Jul 05 2026, 04:57 PM

@github-actions

github-actions Bot commented Jul 5, 2026

Copy link
Copy Markdown

✅ Eval Results

Metric Value
Score 1.00
Build complete
Cost $2.51
Turns 83
Duration 508s
lightcone-cli 0.3.8.dev3+gbe2834805 (be283480)
Results Download

Graders

✅ spec_valid (1.00)
✅ all_materialized (1.00)

Full output
16:57:22 lightcone.eval.build Building lightcone-cli wheel from /home/runner/work/lightcone-cli/lightcone-cli ...
16:57:27 lightcone.eval.build Built lightcone_cli-0.3.8.dev3+gbe2834805-py3-none-any.whl (commit be283480)
16:57:32 lightcone.eval.sandbox Created sandbox 21fd1208-6d51-4e59-b628-6d8fc30ed535 for trial build-snae-0
16:57:33 httpx HTTP Request: POST https://proxy.app.daytona.io/toolbox/21fd1208-6d51-4e59-b628-6d8fc30ed535/files/bulk-upload "HTTP/1.1 200 OK"
16:57:34 lightcone.eval.sandbox Installed wheels: ['lightcone_cli-0.3.8.dev3+gbe2834805-py3-none-any.whl']
16:57:35 httpx HTTP Request: POST https://proxy.app.daytona.io/toolbox/21fd1208-6d51-4e59-b628-6d8fc30ed535/files/bulk-upload "HTTP/1.1 200 OK"
16:57:35 httpx HTTP Request: POST https://proxy.app.daytona.io/toolbox/21fd1208-6d51-4e59-b628-6d8fc30ed535/files/bulk-upload "HTTP/1.1 200 OK"
16:57:35 httpx HTTP Request: POST https://proxy.app.daytona.io/toolbox/21fd1208-6d51-4e59-b628-6d8fc30ed535/files/bulk-upload "HTTP/1.1 200 OK"
16:57:36 httpx HTTP Request: POST https://proxy.app.daytona.io/toolbox/21fd1208-6d51-4e59-b628-6d8fc30ed535/files/bulk-upload "HTTP/1.1 200 OK"
17:06:05 lightcone.eval.sandbox Deleted sandbox for trial build-snae-0
  snae trial 0: score=1.00 complete

lightcone-cli: 0.3.8.dev3+gbe2834805 (HEAD be283480)
ASTRA: 0.2.10

  Eval Results: Scores  
┏━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Task ┃     Score     ┃
┡━━━━━━╇━━━━━━━━━━━━━━━┩
│ snae │ 1.00 +/- 0.00 │
│      │ pass@k: 100%  │
└──────┴───────────────┘

   Eval Results: Cost &   
         Duration         
┏━━━━━━┳━━━━━━━━━━━━━━━━━┓
┃ Task ┃ Cost / Duration ┃
┡━━━━━━╇━━━━━━━━━━━━━━━━━┩
│ snae │      $2.51      │
│      │      508s       │
└──────┴─────────────────┘

Total: 1 trials, $2.51, 508s

Results saved to: eval-results/build-be283480/results.json

@EiffL

EiffL commented Jul 5, 2026

Copy link
Copy Markdown
Member Author

Closing in favor of re-proposing this on the new skills repo: the skill content will land in LightconeResearch/agent-skills stacked on #5 (the three-plugin migration). The lightcone-cli-side wiring here (lc init template + docs mentions of /lc-report) can be re-proposed separately once the skill lands there.

@EiffL EiffL closed this Jul 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant