The project workspace where
humans and AI agents work together
Assign a task to an AI agent the same way you would a teammate, in-app, or to Claude Code, Codex, and Cursor over MCP. Talk to it in task comments. It does the work and proposes a draft; you ratify before anything ships.
Three ways humans and AI work as one team
Not a chatbot in a side panel. A participant in the project, assigned to work, talking back on the task, with a human keeping the authority.
Assign work to AI like a teammate
Onplana's in-app agents and external agents (Claude Code, Codex, Cursor, Windsurf, Copilot Workspace) each show up as a real org member you can assign a task to. Same assignment UI you use for a human. The agent reads the task, its brief, its parent and dependencies, then gets to work.
Collaborate in task comments
Task comments are the shared channel. Comment on a task an agent created or is working, and the agent picks your feedback up on its next sync. No redeploy, no new prompt, no separate chat window. The conversation lives on the task, exactly like it would with a human teammate.
Agents propose, you ratify
Everything an agent produces is a draft. Status reports, risk registers, drafted emails, generated plans all land in the Agent review inbox for a human to approve before anything is sent, published, or executed. The agent does the work; the human keeps the authority.
The collaboration loop, on the task itself
A human and an external agent (Claude Code, Codex) trade work and feedback through task comments. Five steps, no separate chat window.
A task is created
Human or AIEither a person opens a task, or an agent creates one through MCP. When an agent creates it, Onplana records which agent conversation it came from, so the link back to that agent is durable.
The agent does the work
AIThe agent reads the task, its brief, its parent and dependencies, and the open questions it must answer first. It works the task and posts progress as task comments and an agent log.
You comment with feedback
HumanYou review what the agent produced and comment on the task: a correction, a new constraint, a go-ahead. Exactly the same comment box you would use to talk to a human teammate.
The agent picks it up on its next sync
AIOn its next poll the agent asks for its tasks plus any new human comments. It sees your feedback (never its own replies, never an old comment twice) and acts on it, no redeploy and no new prompt required.
Deliverables land in the review inbox
HumanAnything the agent produces as a deliverable, a report, a draft email, a generated plan, lands in the Agent review inbox for a human to approve before it is sent, published, or executed.
Why poll, not push: MCP transport is inbound-only, so Onplana cannot call out to an agent session. The agent discovers your comment on its next sync. The upside is that the loop survives the agent going away and coming back, it just catches up on whatever changed.
Run with Agent, no external client required
Click "Run with Agent" on any task and Onplana's own in-app agent does the work and delivers a draft. A growing library of capabilities, available on every plan within your AI allowance. A representative set:
Draft status report
A sponsor-ready status draft from live task data, saved for the PM to edit before publishing.
Generate risk register
A structured risk table with driving signals, impact, and proposed mitigations for each row.
Analyze project health
A health analysis across schedule, scope, resource, and risk, with per-finding evidence.
Draft stakeholder comms
External-facing update copy (subject, progress, risks, decisions), draft-only, never auto-sent.
Task breakdown
Decompose a claimed task into structured subtasks with inherited project context.
Bounded agent-execute
Read plus additive-write work, run-tagged, never mutating artifacts created outside the run.
Plus action items, handoff docs, decision logs, and general document drafting, with new capabilities added as more PMO workflows mature into agent shape.
You can also fire a Run with Agent automatically from a workflow trigger (Pro and above), so an agent drafts the status report the moment a milestone closes, or builds a risk register when a project enters a new stage.
External agents become members of your org
Connect Claude Code, Codex, Cursor, Windsurf, or Copilot Workspace over MCP and each one shows up as a real member persona, with a name, a role, and a place in the assignment dropdown.
Assignable like a teammate
Each provider gets one persona per org, with a MEMBER role you can adjust in the permissions matrix. Assign it a task, mention it in a comment, see its work in the activity feed. It participates in the project, it does not hover beside it.
Least-privilege by token
Connections authenticate via OAuth 2.1 (with Dynamic Client Registration for spec-compliant clients) or a Personal Access Token. A token can be scoped to specific projects, so an agent you bring in for one project cannot read or write to the rest of your org.
The human keeps the authority
The collaboration is real, but the guardrails are not negotiable. This is the same propose-ratify discipline behind Onplana's whole AI model.
Drafts, not auto-publishes
Reports, drafted emails, generated plans land in the Agent review inbox. Nothing is sent, published, or executed externally on an agent's say-so.
Destructive + external-send ops are blocked for in-app agents
In-app agents cannot delete tasks, remove members, or send email and Teams messages on their own. The block is server-side at the tool layer, not a prompt instruction an agent could talk its way around.
Every action is audited
Agent tool calls write to the same audit ledger as human edits, with the conversation, the user or persona, the input, the output, and the timestamp. A reviewer can trace exactly what an agent did and why.
Tenant-isolated, no cross-org reach
Every agent connection is scoped to one org at provision time. A token tied to one org cannot read or write to another. Multi-org users connect each org separately.
This page sits inside Onplana's three-zone AI model. For the full framing of what AI commits directly, what it proposes, and what it never touches, see the post on AI decision boundaries.
Frequently asked
How does an external agent like Claude Code 'pick up' my comment?
When an agent creates a task, Onplana stamps the task with the conversation that created it. The agent then polls for related work: it asks for the tasks it created plus any new human comments on them. The poll only returns comments authored by humans (it never re-reads its own replies) and only comments newer than the last time it checked, so there is no echo loop. The agent reads your feedback and acts on it on its next cycle, the same way a teammate would see your comment when they next open the task.
Do I have to keep an agent running for it to see my comments?
No. The model is poll-based, not push-based. MCP transport is inbound-only, so Onplana cannot call back out to a Claude Code or Codex session. Instead the agent discovers your comment on its next sync. If the agent session has ended, you re-run it (or trigger it again) and it catches up on everything that changed while it was away.
What can the in-app 'Run with Agent' do?
A growing library of in-app capabilities, including: draft a status report, generate a risk register, analyze project health, draft stakeholder communications, break a task into subtasks, extract action items, draft a handoff doc, log a decision, draft a general document, and run a bounded read-plus-additive-write execution. You click 'Run with Agent' on a task, the agent does the work and delivers a draft to the review inbox. The capability is chosen by the task's description (keyword routing), or you can pin it explicitly.
Can an AI agent change my data without me approving?
Reads run freely. Writes that change existing committed state go through a draft-and-approve loop. In-app agents are additionally blocked from a set of destructive and external-send operations entirely: they cannot delete tasks, remove members, or send email/Teams messages on their own. Those guards are enforced server-side at the tool layer, not by prompt instructions, so a misbehaving agent cannot talk its way past them.
How does an external agent become a member of my org?
On first connection, each external agent provider (Claude Code, Codex, Cursor, Windsurf, Copilot Workspace, and others) is provisioned as one synthetic org-member persona. It has a display name, a member role you can adjust in the permissions matrix, and it can be assigned tasks like any teammate. Connections authenticate via OAuth 2.1 (with Dynamic Client Registration for spec-compliant clients) or a Personal Access Token, which can be scoped to specific projects for least-privilege access.
Is this just a chatbot with extra steps?
No. A chatbot answers questions about your project from a side panel. Here the agent is a participant in the project: assigned to tasks, commenting back, producing drafts that enter your review queue, with every action written to the same audit ledger as a human edit. The collaboration happens on the work itself, not in a detached conversation.
Which providers can connect today?
Any MCP-compatible client. Clients like Claude Code, Codex, Cursor, Windsurf, and Copilot Workspace are among those recognised with their own persona names; any other spec-compliant client connects as a generic agent persona. The full tool catalog (230-plus typed tools) is available over MCP with the same org isolation, plan gating, and audit trail as the in-app AI.
What plan do I need?
MCP access and the agent tool catalog require Pro or higher. The in-app 'Run with Agent' button is available on every plan including Free, subject to your monthly AI token allowance. Firing an agent run automatically from a workflow trigger requires Pro or higher (the automations feature). See the pricing page for the full tier map.
Explore the AI cluster
This page is the teamwork story. The cluster goes deeper on how the AI is built and bounded.
Put a human and an AI agent on the same project
Sign up free, assign a task to the in-app agent or connect Claude Code over MCP, and watch the work happen in the comments.