A harness is what turns a model into an agent: the state it works on, the tools it may call, and the rules it runs under. Many coding-oriented harnesses center their work on a repository and file tree. A long-running project needs a different state model — and each of these six elements is a load-bearing part of TensorPM.
01
The state layer is a project graph
Not a folder, not a chat log. Goals, scope, stakeholders, budget, timeline, milestones, work packages, action items, risks and decisions — typed, related, versioned. Every tool operates on that shape, so the agent reasons about the project rather than about text that happens to mention it.
02
Context Distillation instead of prompt stuffing
Mails, messages, meeting notes and documents are distilled into candidate Action Items, Decisions and Risks. Nothing enters the graph before a human confirms it. That is how the context stays complete, current and confirmed — the precondition for every analysis on top of it.
03
Human-in-the-loop by construction
Approval boundaries are explicit. Distilled inputs and core project-context changes use proposals that a human confirms. Authorized typed MCP operations such as action-item CRUD can apply directly and remain visible in project history. The harness states which path applies instead of relying on a prompt to imply it.
04
Decisions are a first-class primitive
record, supersede, withdraw — with source, actor, rationale and timestamp, chained so the audit trail survives every change of mind. Project management is decision management. A harness for it needs a decision primitive, not a comment field.
05
Time is a primitive, too
Milestones, deadlines, check-ins — and agent self-scheduling: the harness can put itself back on the clock and fires with the full project context in hand. A task-oriented agent run may end with the turn; a project does not.
06
Open at both ends
Bidirectional MCP (server and client), A2A, native mail and messenger connectors, and delegation to coding agents. TensorPM does not replace your agent's harness — it adds a persistent project layer that the agent can use.