agentleFS
celeryhqceleryhq/simplified-ai/skills/simplified-project-management/SKILL.md

simplified-project-management

Skill4 starsChanged 4 months agoMITView on GitHub

Manage Simplified project-management boards, statuses, tasks, assignees, tags, dependencies, comments, activity, and searches through the Simplified full MCP connector (`/full/mcp`). Use when the user explicitly asks to inspect or change Simplified PM data, create or triage tasks, update assignments or status, manage boards and columns, review dependencies, or complete tracked work. Do not invoke for generic coding or debugging unless the request also involves updating Simplified project-management records.

The file

Show its rules and text

We split this skill into the rules it gives an agent

31 rules. About 0 are common, 11 are distinctive, and 20 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈11

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 20

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Use the Simplified full MCP connector at https://apikit.simplified.com/full/mcp (the simplified-full server).

    line 21
  2. Very specific:

    Use logical pm_* tool names for PM resources and api_listComments / api_addComment for task comments.

    line 24
  3. Very specific:

    If a call returns 401, Unauthorized, Needs authentication, or a connection error, stop and ask the user to reconnect Simplified.

    line 27
  4. Distinctive:

    Follow: Discover -> Read -> Confirm -> Write -> Verify.

    line 33
  5. Very specific:

    Call pm_listBoards and match the user's board by title or slug.

    line 37
  6. Distinctive:

    If multiple boards match, ask the user which board they mean.

    line 38
  7. Very specific:

    Call pm_listStatuses for the selected board before resolving a status name.

    line 39
  8. Very specific:

    Call pm_listWorkspaceMembers before assigning by a person's name or email.

    line 40
  9. Distinctive:

    Use IDs returned by the connector only.

    line 41
  10. Distinctive:

    Use agent memory when the client provides it, but keep the workflow functional without memory.

    line 50
  11. Distinctive:

    Treat same-session values as fresh.

    line 59
  12. Distinctive:

    Never store access tokens, authorization headers, private task descriptions, comments, attachments, or search-result bodies in memory.

    line 64
  13. Very specific:

    Read a task with pm_getTask before changing, deleting, cloning, completing, or linking it.

    line 72
  14. Very specific:

    Use expand=status_details,assignees,tags,board when those fields affect the decision or must be verified.

    line 74
  15. Very specific:

    Read dependencies with pm_getTaskDependencies before adding a relationship or marking a blocked task complete.

    line 76
  16. Very specific:

    Read comments with api_listComments before replying to a thread.

    line 78
  17. Distinctive:

    Do not ask again when explicit authorization already covers that exact resource and effect.

    line 94
  18. Very specific:

    Use ISO 8601 date-time values for start_date and due_date.

    line 100
  19. Very specific:

    Use pm_updateTaskAssignees or assignees_add / assignees_remove for assignment changes.

    line 101
  20. Very specific:

    Use pm_updateTaskTags with add / remove arrays of tag names, or tags_add / tags_remove with tag names for task updates.

    line 104
  21. Very specific:

    Use api_addComment with content_type: "task" and the task UUID as object_pk.

    line 109
  22. Very specific:

    Use pm_updateStatus(order=...) to reorder a column.

    line 111
  23. Very specific:

    Verify task writes with pm_getTask, not immediate search results.

    line 117
  24. Very specific:

    Verify dependency changes with pm_getTaskDependencies.

    line 119
  25. Distinctive:

    Verify board and status changes with their direct get or list tools.

    line 120
  26. Distinctive:

    If a write returns a transient or ambiguous error, do not retry blindly.

    line 123
  27. Very specific:

    Search excludes subtasks by default.

    line 131
  28. Very specific:

    Keep page_size at or below 100.

    line 135
  29. Very specific:

    Use pm_searchRecentTasks for recently modified cross-board work.

    line 138
  30. Distinctive:

    Read references/workflows.md for operation routing, board/status management, subtasks, dependencies, comments, and completion.

    line 144
  31. Distinctive:

    Read references/tool-behavior.md after a search, write, pagination, expansion, or rich-description issue.

    line 146

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Simplified Project Management

Operate each user's own Simplified PM workspace through the hosted connector. Discover identifiers from live tools and optionally cache stable mappings in agent memory; never ship or assume tenant-specific IDs.

Connector

Use the Simplified full MCP connector at https://apikit.simplified.com/full/mcp (the simplified-full server). The default connector at /mcp does not serve the pm_* tools; if they are missing, ask the user to connect simplified-full. Use logical pm_* tool names for PM resources and api_listComments / api_addComment for task comments.

If a call returns 401, Unauthorized, Needs authentication, or a connection error, stop and ask the user to reconnect Simplified. Do not retry writes while authentication is unresolved.

Core Workflow

Follow: Discover -> Read -> Confirm -> Write -> Verify.

1. Discover context

  1. Call pm_listBoards and match the user's board by title or slug.
  2. If multiple boards match, ask the user which board they mean.
  3. Call pm_listStatuses for the selected board before resolving a status name.
  4. Call pm_listWorkspaceMembers before assigning by a person's name or email.
  5. Use IDs returned by the connector only. Do not retain tenant-specific IDs in the skill or infer IDs from names.

For teamspace-scoped work, pass space_id when the user selected a teamspace. Otherwise omit workspace and teamspace arguments and use the authenticated default context.

Optional memory cache

Use agent memory when the client provides it, but keep the workflow functional without memory.

  • Cache stable board, status, member, and tag mappings after live discovery.
  • Namespace every entry by connector, authenticated workspace, and teamspace so IDs can never leak across accounts or tenants.
  • Store the resource type, ID, display name, parent board ID when relevant, and last_verified_at. Store a user's preferred board/teamspace only when they explicitly chose it or asked for that preference to persist.
  • Treat same-session values as fresh. On the first cross-session use, after a meaningful age, or before a consequential bulk action, validate the mapping with the appropriate live list/get tool.
  • Refresh memory after a successful create, rename, move, or delete. Invalidate it on 404, name/parent mismatch, workspace switch, or authentication change.
  • Never store access tokens, authorization headers, private task descriptions, comments, attachments, or search-result bodies in memory.

Memory reduces repetitive discovery calls; it does not replace direct reads for current task state or post-write verification.

2. Read before writing

  • Read a task with pm_getTask before changing, deleting, cloning, completing, or linking it.
  • Use expand=status_details,assignees,tags,board when those fields affect the decision or must be verified.
  • Read dependencies with pm_getTaskDependencies before adding a relationship or marking a blocked task complete.
  • Read comments with api_listComments before replying to a thread.

3. Confirm consequential actions

Proceed without an extra confirmation when the user explicitly requested an ordinary create or edit and the target is unambiguous.

Confirm the exact resource and effect before the following actions when the user has not already explicitly authorized that effect:

  • deleting a board, status, or task;
  • removing a task dependency;
  • draining a status with pm_moveStatus;
  • cloning a board with its statuses and tasks;
  • performing a bulk or ambiguous change.

Do not ask again when explicit authorization already covers that exact resource and effect. Do not treat a request to inspect or plan as permission to execute.

4. Write precisely

  • Pass plain text in task description; do not construct rich_description.
  • Use ISO 8601 date-time values for start_date and due_date.
  • Use pm_updateTaskAssignees or assignees_add / assignees_remove for assignment changes. Resolve integer user IDs from pm_listWorkspaceMembers.options[].value first, not membership-record IDs.
  • Use pm_updateTaskTags with add / remove arrays of tag names, or tags_add / tags_remove with tag names for task updates. Assignee focused writes use add / remove arrays of integer user IDs.
  • Set dependency relation_type to uppercase BLOCKS, RELATES_TO, or DUPLICATES.
  • Use api_addComment with content_type: "task" and the task UUID as object_pk. Use an integer comment ID as parent for a reply.
  • Use pm_updateStatus(order=...) to reorder a column. Use pm_moveStatus only to move all tasks from one source status into a destination. Source deletion is a separate pm_deleteStatus operation after verifying it is empty.

5. Verify the result

  • Verify task writes with pm_getTask, not immediate search results.
  • Expand the fields changed by the write.
  • Verify dependency changes with pm_getTaskDependencies.
  • Verify board and status changes with their direct get or list tools.
  • Report the resulting task/board title, status, assignees, and identifier.

If a write returns a transient or ambiguous error, do not retry blindly. A write may have committed. Use a returned ID for a direct read; if no reliable ID was returned, explain the uncertainty and ask before attempting another create.

Search and Listing

Scope pm_searchTasks by board and status whenever possible. For a whole-board search, list statuses and query each column, paginate, and deduplicate task IDs. Search excludes subtasks by default. Pass include_subtasks:true when the request covers subtasks/all tickets or an expected task is absent. task_type:"SUBTASK" implies inclusion unless include_subtasks explicitly overrides it. Fetch a known task directly by ID/slug before declaring it absent. Keep page_size at or below 100. Treat search as eventually consistent after a write; use direct get tools for verification.

Use pm_searchRecentTasks for recently modified cross-board work. Use pm_getTask on candidates when exact creation timestamps or expanded relations matter.

References

  • Read references/workflows.md for operation routing, board/status management, subtasks, dependencies, comments, and completion.
  • Read references/tool-behavior.md after a search, write, pagination, expansion, or rich-description issue.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.