Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/perforce/p4plan-mcp/task-managementnpx skills add perforce/p4plan-mcp --skill task-managementgit clone --depth 1 https://github.com/perforce/p4plan-mcpWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00050 | $0.01167 |
| Opus 5 | $0.00025 | $0.00583 |
| Sonnet 5 | $0.00010 | $0.00233 |
| Haiku 4.5 | $0.00005 | $0.00117 |
Grade A, and why
p4-plan-task-management scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 68 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Task Management in P4 Plan
The To Do List (get_my_tasks) shows all tasks, items, and bugs assigned to the current user across projects.
Key Concepts
- Status values: notDone, inProgress, completed, blocked
- Percent complete: 0-100. Setting to 100 auto-completes. Used mainly for scheduled tasks.
- Work remaining: Hours left on a backlog task. Setting to 0 auto-completes.
- Workflow status: Some tasks have custom workflow statuses beyond the basic four. Check task.workflow and task.workflowStatus.
- Task types: BacklogTask (backlog), ScheduledTask (planning/Gantt), Bug (QA). All share the same status, assignment, and comment tools.
- Multi-assignment: Multiple users can be assigned to one task. update_item assignedTo replaces existing assignees — include existing ones to add. Each entry supports optional percentageAllocation (default: 100).
- Sprint constraint: When assigning a task in a sprint, the assignee must already be a sprint member.
- Links: Items can link to other items (blocks, duplicates, related) or to external URLs. Use get_tasks to see existing links.
- Comments are HTML:
post_commentandupdate_commentaccept sanitized HTML — see the comment-html-format skill for the allowed tag/CSS subset, and the mentions skill for@userreferences.
Tool Mapping
| User Intent | Tool | Key Parameters |
|---|---|---|
| See my assigned work | get_my_tasks | showCompleted, showOnlyNextFourWeeks, showPipelineTasksThatCannotStart |
| Get full task details & links | get_tasks | taskIds |
| Start working on task | start_task | taskId |
| Complete a task | complete_task | taskId |
| Mark task blocked | update_item | itemId, status: "blocked" |
| Update progress % | update_item | itemId, percentCompleted |
| Update work remaining | update_item | itemId, workRemaining |
| Update multiple fields | update_item | itemId, name, status, points, priority, etc. |
| Assign to user(s) | update_item | itemId, assignedTo: [{ userID, percentageAllocation? }] |
| Get current user info | get_current_user | (none) |
| List project team members | list_project_users | projectId |
| Post comment | post_comment | taskId, text |
| Edit a comment | update_comment | taskId, commentId, text |
| Delete a comment | delete_comment | taskId, commentId |
| Read discussion | get_comments | taskId |
| List attached files | get_attachments | taskId |
| Download/view a file | download_attachment | taskId, path (from get_attachments) |
| Remove an attachment | delete_attachment | taskId, path |
| Set cover image | set_cover_image | taskId, imagePath (null to remove) |
| Link item to item | link_items | fromItemId, toItemId, relation (blocks/duplicates/relatedTo) |
| Link item to URL | link_items | fromItemId, url, relation, notes? |
| Remove a link | unlink_items | fromItemId, toItemId or url |
| Search for tasks | search_tasks | findQuery, projectId |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 68 lines · 50 tokens per session scan A 9f9c3f235e28
p4-plan-task-management is a skill published in the GitHub repository perforce/p4plan-mcp (4 stars, last pushed 3mo ago), licensed MIT. It adds 50 tokens to every session and 1,167 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
p4-code-review
P4 code review workflows — discover, create, vote, comment, transition, and manage reviews via P4 MCP tools. Use when: creating reviews, voting, commenting, transitioning review states, managing participants, or tracking review activity in P4.
p4-file-operations
P4 file operations — query content, history, annotations, diffs, and modify files (add, edit, delete, move, sync, resolve) via P4 MCP tools. Use when: reading file content, viewing history, comparing revisions, adding or editing files, syncing, resolving conflicts, or reconciling workspace changes in P4.
p4-stream-workflows
P4 stream workflows — creation, branching, merging, copying, integration, switching, and spec management via P4 MCP tools. Use when: creating streams, branching, merging, copying between streams, integrating changes, switching workspaces, or managing stream specs in P4.
p4-changelist-management
P4 changelist workflows — create, list, submit, shelve, unshelve, and manage changelists and shelved files via P4 MCP tools. Use when: creating changelists, editing files, shelving, unshelving, submitting, organizing changes, or managing pending work in P4.
p4-workspace-setup
P4 workspace setup and management — create, configure, sync, and switch workspaces via P4 MCP tools. Use when: creating workspaces, configuring client specs, syncing files, switching workspaces, or checking workspace status in P4.
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.