Bring your own model.
Caladia doesn’t ship with an embedded LLM, API key, or vendor account. The repo ships a portable authoring skill — a markdown spec any sufficiently capable LLM can follow to produce a valid .cala. Paste the skill into Claude, GPT, Gemini, or a local model; give it the source material; get JSON back.
1. The authoring skill
The skill is a roughly 400-line markdown document that specifies:
- What Caladia is, in one paragraph.
- The required JSON output format — literal field names, value constraints, version pins.
- A schema reference: every top-level array, every node type, every distribution shape.
- Conversion rules: how to map common source structures (Gantt rows, slide bullets, MSP XML elements) into Caladia’s graph.
- Output rules: JSON only, no prose, no markdown fences.
The skill lives at docs/caladia-authoring-skill.md in the Caladia source. Copy, fork, or version it with your projects. MIT licensed.
2. The flow
Three steps, run in your model of choice:
- Paste the skill as the system prompt or the first user message.
- Paste the source artifact — an MS Project XML export, a copy-paste of a Gantt spreadsheet, the text content of a slide deck, or a plain-text description of the workflow.
- Get JSON back. Save it as
plan.cala, drag onto Caladia, eyeball the imported graph.
3. What you can import
Four source shapes the skill handles:
- MS Project XML — the export format from MSP and most enterprise PM tools that can read MSP. The skill maps tasks to activities, summary tasks to sub-systems, predecessor links to FS/SS/FF/SF edges with lags.
- Gantt-shaped spreadsheets — an Excel sheet with task names, durations, dependencies, optionally resources. Copy-paste the cells or save as
.csvand paste. The skill handles common conventions but works best when the columns are labelled. - Slide decks — PowerPoint or Google Slides exported as text. The skill reads numbered process steps, swimlane diagrams, decision-flow slides. Works well for documented processes; less well for free-form architecture decks.
- Plain text descriptions — “Build takes 3 days. Test takes 2 days. Both feed into Review which has a 70% pass rate.” The skill maps this directly. Good for prototyping a plan you haven’t formalised yet.
4. Quality — what to check
An LLM with the skill produces valid JSON most of the time. Correct JSON is the harder question. Two things to eyeball after every import:
- Dependencies. The biggest failure mode is missed edges. If the source said “Build and Test feed Review” and only one dep landed, the schedule is wrong. Spot-check by tracing a few critical paths on the canvas.
- Distributions. A source that gives single-point durations will produce single-point distributions (or no distribution at all). The skill won’t invent uncertainty. After import, decide which activities deserve a triangular or PERT-beta and add those manually — see Distributions.
Treat the import as a starting point and refine in the canvas.