ワンクリックで
blprnt
Pick up assigned issues, interact with the blprnt API, use project or employee memory, update issue state, and hand work off cleanly.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Pick up assigned issues, interact with the blprnt API, use project or employee memory, update issue state, and hand work off cleanly.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Create or update employees through the blprnt API, including role selection, agent runtime/provider configuration, reporting lines, and follow-up verification after creation.
PARA-based persistent memory for blprnt employees and projects. Use this skill whenever you need to save, retrieve, revise, or organize knowledge across runs. Covers three layers: (1) entity memory in PARA folders with atomic YAML facts, (2) daily notes as a chronological log, and (3) tacit working knowledge about how the user operates. Also covers planning files, memory decay, periodic synthesis, and recall through blprnt's built-in QMD search. Trigger on any memory task: storing facts, writing notes, creating entities, refreshing summaries, recalling prior context, or managing plans.
| name | blprnt |
| description | Pick up assigned issues, interact with the blprnt API, use project or employee memory, update issue state, and hand work off cleanly. |
You run in short bounded passes, not as a permanently attentive process.
Each pass should look like this:
If nothing is assigned and there is no explicit instruction to triage or reassign work, exit instead of inventing new work.
Available environment variables may include:
BLPRNT_API_URLBLPRNT_EMPLOYEE_IDPROJECT_HOMEAGENT_HOMEProtected API routes use the employee header:
x-blprnt-employee-idTreat that header as required for normal protected /api/v1 calls.
Copy-paste-safe example:
curl -H "x-blprnt-employee-id: $BLPRNT_EMPLOYEE_ID" "$BLPRNT_API_URL/api/v1/employees/me"
Positive example:
curl -H "x-blprnt-employee-id: 019d4ef2-597d-7620-9b7b-ca31e58abd6b" \
"http://127.0.0.1:9171/api/v1/issues"
Anti-example:
curl "http://127.0.0.1:9171/api/v1/issues"
That anti-example may fail on protected routes because it omits x-blprnt-employee-id.
Optional context headers:
x-blprnt-project-idx-blprnt-run-idThe API middleware also accepts employee_id as a query parameter fallback, but the header is preferred.
Use the query fallback only when you truly cannot send headers. Do not treat it as the normal path.
All protected routes live under:
/api/v1
When you use the shell tool in this runtime, pass the real command directly.
The shell tool already executes commands via /bin/bash -c for you.
Positive example:
command: "cargo test -p api"
Anti-example:
command: "bash -lc 'cargo test -p api'"
Do not wrap normal commands in bash -c or bash -lc. Nested wrappers are a recurring failure mode and can break quoting, escaping, and argument handling.
For a current machine-readable contract of the HTTP API, use:
GET /api/v1/<resource>/openapi.json
Examples:
GET /api/v1/issues/openapi.json
GET /api/v1/employees/openapi.json
GET /api/v1/runs/openapi.json
Use the resource-specific OpenAPI document when you need to confirm available endpoints or inspect request and response shapes for that part of the API. These routes are public and do not require x-blprnt-employee-id.
Runtime skill discovery:
Available Runtime Skills section with skill names and pathsGET /api/v1/skills
This route is protected and uses the normal employee identity header.
When mutating issue state during a run, preserve x-blprnt-run-id if you have it so comments, attachments, and actions stay linked to the correct run.
Start with:
GET /api/v1/employees/me
If you call that route through curl or another HTTP client, include x-blprnt-employee-id because it is a protected /api/v1 route.
Use this to confirm:
List active issues:
GET /api/v1/issues?expected_statuses=todo&expected_statuses=in_progress&expected_statuses=blocked
Then filter locally to the issues assigned to your employee id.
Prioritize them in this order:
in_progresstodoblocked only when new context exists or you can unblock itDo not roam for unassigned work unless the task explicitly asks you to do management or triage.
If your role is manager and there are no issues assigned to you then also do a direct-report sweep:
GET /api/v1/employeesreports_to matches your employee idGET /api/v1/issues?assignee=<employee-uuid>&expected_statuses=todo&expected_statuses=in_progress&expected_statuses=blockedManagement sweeps are for unblock and escalation work, not for taking over unrelated execution from direct reports.
Prefer continuing existing in-progress work over starting something new.
If multiple assigned issues are available, prefer:
Claim the issue first:
POST /api/v1/issues/{issue_id}/checkout
Rules:
Use:
GET /api/v1/issues/{issue_id}
This already includes the issue plus:
Use child issues when decomposition matters:
GET /api/v1/issues/{issue_id}/children
Read enough to answer:
If the issue belongs to a project, fetch it:
GET /api/v1/projects/{project_id}
Use the project's working_directories to understand where the task is expected to act.
If the task depends on stored notes or durable context, use the memory routes rather than relying on chat history:
GET /api/v1/employees/me/memory
GET /api/v1/employees/me/memory/file?path=...
POST /api/v1/employees/me/memory/search
GET /api/v1/projects/{project_id}/memory
GET /api/v1/projects/{project_id}/memory/file?path=...
POST /api/v1/projects/{project_id}/memory/search
Use employee memory for personal operating context. Use project memory for shared project context.
When you need to create or revise durable files, do it with the apply_patch tool under the appropriate runtime root:
AGENT_HOME for employee-owned files such as HEARTBEAT.md, MEMORY.md, TOOLS.md, daily notes, and PARA foldersPROJECT_HOME for shared project state such as memory/SUMMARY.md, project meta-resources, and plans/Use your normal tools and capabilities. The runtime expectation is simple:
Operational guardrails:
/api/v1 calls should include x-blprnt-employee-idx-blprnt-run-id on mutating issue requests when availablebash -c or bash -lcUse these routes:
PATCH /api/v1/issues/{issue_id}
POST /api/v1/issues/{issue_id}/comments
POST /api/v1/issues/{issue_id}/attachments
Common outcomes:
doneblocked, then reassign to your manager when escalation is needed and one existsWhen you move an issue into done or blocked, release your checkout explicitly once the status update and any needed handoff are complete. Do not leave a stale checkout on finished or blocked work.
Issue comments are the primary user-facing record on an issue. When you finish a turn, the issue comment should closely mirror the substance of the response you would send to the user.
Prefer a real markdown update over a terse placeholder. If your user-facing response includes meaningful detail, the issue comment should include that detail too.
Keep comments operational and clear:
If the run was non-idle, append a brief daily note to AGENT_HOME/memory/YYYY-MM-DD.md before you exit.
Treat a run as non-idle when you made meaningful progress, changed files, changed issue state, posted a substantive issue comment, uncovered a blocker, or learned something the next run is likely to need.
If shared project context changed during a non-idle run, also update PROJECT_HOME/memory/SUMMARY.md.
Issue comments do not replace memory writeback. Keep both when the run produced durable context.
When an issue becomes blocked, follow this order:
blockedDo not mark an issue blocked silently, and do not leave a newly blocked escalation parked on yourself.
If ownership should change:
POST /api/v1/issues/{issue_id}/assign
POST /api/v1/issues/{issue_id}/unassign
POST /api/v1/issues/{issue_id}/release
Use these intentionally:
assign changes the assigneeunassign removes the assigneerelease drops checkout ownershipAssignment and checkout are separate. An issue may stay assigned while you release it.
Release checkouts intentionally whenever active execution is no longer yours. This includes:
blockeddoneDo not hold a checkout across an explicit or implicit handoff. If someone else should act next, release the issue.
When completing work, notify completion deliberately:
x-blprnt-employee-id on protected routes.x-blprnt-run-id on mutating issue requests when available.bash -c or bash -lc in normal shell tool usage.manager, check in on your direct reports and inspect blocked issues during the pass.blocked, write the blocker comment first.done, or mark it blocked, release your checkout explicitly.Use issue status conservatively:
backlog: parkedtodo: ready to startin_progress: active workblocked: cannot continuedone: completedcancelled: intentionally abandonedDo not use status changes as a substitute for checkout or release.
blprnt exposes first-class memory routes for recall. Use them when the work depends on prior notes, decisions, plans, or operating context.
Employee memory routes:
GET /api/v1/employees/me/memoryGET /api/v1/employees/me/memory/file?path=...POST /api/v1/employees/me/memory/searchProject memory routes:
GET /api/v1/projects/{project_id}/memoryGET /api/v1/projects/{project_id}/memory/file?path=...POST /api/v1/projects/{project_id}/memory/searchUse memory APIs to recover context across runs. Write durable memory with apply_patch under AGENT_HOME or PROJECT_HOME. Do not rely on model memory alone.
Runs are owner-only. Treat run data as background traceability and focus on issue, project, employee, and memory routes unless run administration is part of the task.
Read these when you need concrete route behavior or example flows:
skills/blprnt/references/api-reference.mdskills/blprnt/references/runtime-workflows.md