How to run a project
What counts as a project in this KB, what every project page must show, and how to use the LTP skill to get there.
A project here is a major internal improvement at Datopian: a product, a process or a capability. Client delivery is tracked elsewhere, not here.
TL;DR: start a project in 3 steps
For major internal work only (product, process, capability). Not for client projects.
-
Install the LTP skill in your AI agent (once):
npx skills add life-itself/reasoncommons -
Ask your agent:
Use the ltp-project skill to analyse a new project, [name]. Ask me questions to get started.
Optionally tell it the situation (where we are) and the complication (what's wrong) up front.
-
Create the page
projects/slug/README.mdwith a## Summarythat answers:- Objective and key results: what we want, and 2–4 measurable results
- Analysis: link to the LTP (or SCQ), or "not yet"
- Driver: one named person
- Timeline: start, end or review date, next milestone
A stub is fine: use status: idea and mark gaps. Switch to status: active once all four have real answers. Everything below is detail.
Is it a project?
Only if all three hold:
- Internal improvement: builds a product, process or capability for Datopian, not a client deliverable.
- Major: matters at company level, needs more than one person or more than a few weeks.
- Bounded: has an objective and a date by which we'll know whether it worked.
Otherwise: client delivery goes in the client's tracker; ongoing work with no end is an initiative; campaigns, releases and routine tasks go in the execution tracker linked from the relevant initiative.
The page
A single file projects/YYYY-slug.md or, if it will have supporting files, a folder projects/slug/README.md. Copy the frontmatter from the project template and set a parent initiative. Frontmatter feeds the portfolio tree.
Example Summary (illustrative, not a real project):
## Summary
- **Objective:** Cut proposal turnaround so we can bid on more RFPs without adding staff.
- **Key results:**
- Median time from RFP received to submitted: 10 days → 5 days by 2027-01-31
- Bids submitted per quarter: 4 → 8
- **Analysis:** [[ltp/rfp-speed-2026-10-01.reportLTP report]]
- **Driver:** Jane Doe
- **Timeline:** 2026-10-01 → 2027-01-31. Next milestone: reusable answer bank, 2026-11-15.
Put actions in a beads epic (bd create --type=epic …) and set active_issue to its ID. The page states the plan; beads tracks progress.
More on the LTP skill
LTP (Logical Thinking Process) turns what you know into a goal, the key results needed to reach it, the obstacles and the actions. The skills come from Reason Commons:
- ltp-project interviews you, or reads existing notes, docs or an SCQ, and writes a
*.ltp.yamlplus a report of the judgment calls it made. - ltp-visualize turns the
*.ltp.yamlinto an interactive HTML view.
Tips:
- You don't need anything written first. If you do have notes or an SCQ, point the skill at them.
- Review the report's judgment calls; the first output is a draft.
- Keep files in the project's
ltp/folder. Once an LTP exists, update it rather than older notes. - The LTP goal becomes the objective, its key results become the key results, and its actions become beads issues.
Worked examples: E2E operators, PortalJS.
Keeping it current
Update the Summary when anything in it changes. Active projects are reviewed in the accountability rhythm. When a project ends, record what we tried, what happened, what we learned and what's next, then set status: retired.