Project LTP
Analyze software projects, repositories, codebases, TODO lists, roadmaps, implementation plans, issue exports, and project documentation using the Logical Thinking Processes of the Theory of Constraints. Use this skill whenever the user wants an evidence-backed Goal Tree, Current Reality Tree, Evaporating Cloud, Future Reality Tree, Prerequisite Tree, Transition Tree, system-constraint diagnosis, causal analysis, plan/code reconciliation, or a recommendation for what to work on next. Also use when the user wants to explore those trees or project throughput in the bundled local dashboard.
Project LTP
Reconstruct the logic implicit in a project and maintain one evidence-backed causal model. Render the Goal Tree, Current Reality Tree, Evaporating Clouds, Future Reality Tree, Prerequisite Tree, and Transition Tree as views of that shared model rather than as unrelated documents.
Required operating principles
- Classify every material statement as
observed,inferred,provisional,confirmed, ordisputed. - Attach evidence, source paths, line ranges when available, reasoning, and confidence to observed and inferred entities.
- Never present inferred business intent as fact.
- Express important causal links as:
If [cause], then [effect], because [assumption]. - Reuse stable entity and link identifiers across all trees.
- Record tree membership under the model's
viewsmap. - Maintain the machine-readable model in
ltp-model.yaml. - Continue with a clearly marked provisional goal when evidence is incomplete.
- Never claim repository coverage that was not actually achieved.
Read references/principles-and-model.md before building or revising the
causal model.
Choose the analysis mode
Forward mode
Use when the primary input is a codebase, system, or collection of project artifacts.
Build in this order:
- Evidence map
- Goal Tree
- Current Reality Tree
- Evaporating Clouds
- Future Reality Tree
- Prerequisite Tree
- Transition Tree
- Next-action recommendation
Reverse mode
Use when the primary input is a TODO list, roadmap, implementation plan, or task set. Treat each task as a candidate Transition Tree action, infer the logic it is supposed to serve, and reject or flag tasks that do not trace to the goal.
Reconciliation mode
Use when both implementation evidence and a plan are available. Compare what the code does, what the plan assumes, what the goal requires, and what work is missing or irrelevant.
Read references/analysis-workflow.md for the full examination and
reconciliation procedure.
Repository workflow
1. Inventory
Enumerate files and classify them as source, tests, configuration, infrastructure, documentation, schemas, UI text, CI/CD, monitoring, plans, generated files, vendor dependencies, binaries, or unknown.
2. Examine behavior
Identify actors, inputs, outputs, workflows, state changes, integrations, failure paths, and acceptance criteria. Prefer evidence in this order:
- Executable behavior and tests
- Configuration and schemas
- Public interfaces and contracts
- Architecture decisions
- Operational documentation
- Issues and plans
- README claims
- Comments and TODOs
- Names and directory structure
3. Find intent and pain signals
Look for product claims, architectural intent, incomplete work, repeated failures, workarounds, contradictions, reliability risks, security risks, deprecations, and missing implementations.
4. Synthesize one causal model
Create entities, evidence items, assumptions, links, open questions,
contradictions, coverage gaps, view membership, and the current constraint in
ltp-model.yaml.
5. Render the trees
Read references/tree-construction.md and apply the construction rules for
each tree. Reuse entity IDs whenever the same condition appears in multiple
views.
6. Determine what to work on next
Identify the current constraint, locate the earliest blocked objective, prefer high-leverage actions over visible activity, and choose one primary action. State its expected immediate effect and the uncertainty most likely to change the recommendation.
Required files
When the user asks for a full analysis, create an ltp/ directory with the
canonical deliverables below:
00-coverage-and-evidence.md01-project-model.md02-goal-tree.md03-current-reality-tree.md04-evaporating-clouds.md05-future-reality-tree.md, including negative-branch analysis06-prerequisite-tree.md07-transition-tree.md08-next-action.md09-assumptions-and-questions.mdltp-model.yaml
Create throughput.yaml only when a defensible goal unit and real observations
are available. Never invent throughput history to fill the dashboard.
Use Mermaid diagrams when useful, but ensure every diagram also has a readable text representation.
Read references/validation-and-deliverables.md for validation checks,
incremental-update behavior, output requirements, and the final response
format.
Local dashboard
When the user asks for a visual or local interface, read
references/dashboard-and-throughput.md, make the shared model dashboard-ready,
then run:
python skills/project-ltp/scripts/serve_dashboard.py --project /path/to/project --open
Treat the dashboard as a read-only view of the YAML files, not as a second source of truth. Bind to loopback unless the user explicitly requests network access.
Completion rules
Before finalizing:
- Validate causal sufficiency and expose assumptions.
- Check cross-tree identifier consistency.
- Distinguish observations from interpretations.
- List contradictions and unresolved questions.
- Report excluded, unreadable, generated, binary, or oversized files.
- Give one primary next action, not an unranked task list.
- State what evidence could overturn the recommendation.
- Validate stable link IDs and all entity/link references in
views.