Help us improve
Share bugs, ideas, or general feedback.
From issueboss
Ad-hoc research skill — investigate any topic (no IssueBoss issue required) by dispatching research-topic-processor, presenting findings inline, and optionally saving a document to .insights/shared/research/.
npx claudepluginhub szinn/issueboss --plugin issuebossHow this skill is triggered — by the user, by Claude, or both
Slash command
/issueboss:researchThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You are using the `research` skill to investigate a free-form topic and present findings inline.
Creates p5.js generative art with seeded randomness, noise fields, and interactive parameter exploration. Use for algorithmic art, flow fields, or particle systems.
Share bugs, ideas, or general feedback.
You are using the research skill to investigate a free-form topic and present findings inline.
No IssueBoss issue is required — this skill works for any ad-hoc query.
This skill applies when:
/research with a query["#codebase", "#web"]. Valid tags: #codebase, #implementation, #architecture, #patterns, #conventions, #examples, #web, #external, #library, #practices, #web-deep. Pass [] if none are provided — the processor infers dimensions from the topic description.Before dispatching the processor, resolve the current VCS context from the project root.
Check whether .jj/ exists in the project root.
If jj repo: Run:
jj log -r @ --no-graph -T 'change_id ++ " " ++ commit_id'
Split on the first space: first token = change_id, second token = commit.
If git repo (no .jj/): Run git rev-parse HEAD → commit; set change_id = "".
If neither: Set change_id = "" and commit = "".
Resolve VCS context — follow the VCS Context Resolution section above.
Dispatch issueboss:research-topic-processor via the Agent tool with this exact prompt format:
Research the following topic:
topic_description: {topic}
topic_tags: {tags as JSON array, or [] if none}
change_id: {change_id}
commit: {commit}
project_root: {absolute path to project root}
Note: do NOT include an issue_slug line — this is an ad-hoc invocation.
Wait for the processor to return its structured output (delimited by ---FRONTMATTER---, ---FINDINGS---, ---END---).
Parse the output:
---FRONTMATTER--- and ---FINDINGS--- as frontmatter fields.---FINDINGS--- and ---END--- as the findings body.Present findings inline — display the full findings body to the user as-is.
Offer to save — after presenting, ask:
Want me to save this as a research document in
.insights/shared/research/?
Do not save automatically. Wait for an explicit yes. If the user declines or gives no clear answer, do not write any file.
Derive the filename from the frontmatter topic field:
topic into space-delimited tokens; take the first 6 (or all tokens if fewer than 6){kebab-summary}Write the file to .insights/shared/research/{kebab-summary}.md using the Write tool.
Do NOT run mkdir — the Write tool creates parent directories automatically.
File content format:
---
topic: {topic value from frontmatter}
date: {date value from frontmatter}
status: {status value from frontmatter}
change_id: {change_id value from frontmatter}
commit: {commit value from frontmatter}
dimensions_active: {dimensions_active value from frontmatter}
---
{findings body exactly as returned by the processor}
Confirm the path to the user:
Saved to
.insights/shared/research/{kebab-summary}.md
mcp__issueboss__* tools..claude/issueboss.json — do not read project config; derive all context from the query and VCS.issue_slug — never include an issue_slug line in the processor prompt for this skill.