Explore
| This documentation was generated with the assistance of AI. Please report any inaccuracies. |
Produce a grounded understanding of this repository’s codebase and, when available, of a specific tracked ticket — a GitHub issue or a Jira ticket — without writing a plan or making code changes. This is read-only research: its output is a report, not a diff.
Purpose
iru-explore gets an agent (or a human) oriented before any decision or code change is made. Given a ticket id, it
auto-detects whether it’s a GitHub issue or a Jira key and narrows the investigation to only the areas that
ticket implicates; given none, it does a general architectural tour of the repository. For a Jira ticket, it also
fetches the ticket’s epic and any linked/related tickets one hop out (since an epic or a linked ticket often
carries context — a shared constraint, what a "blocks"/"relates to" link actually means — that the leaf ticket’s
own fields omit), and downloads and reads any implementation_plan_*.md file attached to the ticket, its epic, or
its linked tickets: exactly the naming convention iru-code archives completed plans under and iru-issue
attaches back onto a resolved ticket, so a match here is a previously-completed plan for similar or related work
travelling with the ticket itself. It also detects which platform hosts the repository (GitHub, Bitbucket, Azure
DevOps, or TFS) and the language(s)/framework(s) in play — both in the existing codebase and in whatever change is
being requested — so its "Tech stack" report can be reused directly by later skills (iru-plan, iru-code,
iru-update-docs, PR/branch creation) instead of each re-detecting the same facts. This works even when the current
working directory isn’t a git repository at all: it warns the user once, records that explicitly, and keeps going
with whatever sources don’t need git (a Jira ticket, a documentation MCP, and any files actually present) — a
GitHub issue lookup in that case falls back to asking the user for the target owner/repo explicitly. It also
checks for a .archive/ directory — where iru-code archives every completed implementation_plan.md — and, if
it holds a plan whose topic overlaps with the current task, reads it as concrete precedent for how a similar task
was previously scoped and broken into task groups, rather than planning from a cold start. If a documentation MCP
(e.g. Confluence, Notion) is connected, it also does a targeted search for pages relevant to the ticket or
codebase, folding anything relevant into the report as extra context for a later plan. Either way it never edits
a file, and it never proposes an implementation — that is `iru-plan’s job, run as a separate, explicit step.
Inputs
| Argument | Required | Description | Default |
|---|---|---|---|
|
No |
A GitHub issue number or a Jira key (e.g. |
None — if omitted, the skill asks whether to explore a specific ticket anyway; declining falls back to a general codebase tour. |
Outputs
-
A plain-text report in the conversation — never a written file.
-
Always a Tech stack section: codebase languages/frameworks (per module, if more than one), the languages/frameworks implicated by the requested change, the Antora docs location (or "none found"), and the detected repository host (GitHub/Bitbucket/Azure DevOps/TFS, "no remote configured", or "none — not a git repository") — structured so later skills in the same conversation can read it directly instead of re-detecting it.
-
If a documentation MCP (e.g. Confluence, Notion) is connected: a Related documentation section listing relevant pages found (title, link, one-line summary), or a note that none was relevant/connected.
-
A Related past implementation plans section covering both the local
.archive/check and, for a Jira ticket, anyimplementation_plan_*.mddownloaded from the ticket/epic/linked tickets: name and source (local vs. downloaded) of any plan(s) used as precedent, its original topic, and what carries over — or a note that neither source had anything relevant. -
If a ticket was explored: the task restated in plain language, the specific files/classes/methods relevant to it, how the current code behaves in that area, and anything ambiguous or missing that would block implementation. For a Jira ticket, also its epic (if any) and any linked/related tickets, each with a one-line summary of what it adds.
-
If codebase-only: a summary of the architecture areas covered and anything notable found.
-
If the working directory isn’t a git repository: an explicit warning stating what that disabled (git-remote- dependent tooling,
git loghistory) versus what still ran normally (Jira, a documentation MCP, file-based codebase checks). -
No code, configuration, or documentation is ever modified.
Execution flow
Dependencies
Invoked by
-
Plan — Step 2 runs
iru-explorefirst (unless equivalent exploration already happened earlier in the conversation) so the plan it drafts is grounded in the real codebase. -
Issue — Step 5 runs
iru-explore(scoped to the ticket) as the first step of its explore → plan → code → PR pipeline. -
PR Review — Step 5 runs
iru-exploreto learn the codebase’s architecture and conventions before judging a pull request’s diff against them. -
Create GitHub Issue and Create Jira Ticket — each runs
iru-explorewith no argument (general orientation, since no ticket exists yet) to ground the ticket they draft in the real codebase.
Related agents
-
The built-in
Exploreagent (see Agents) — Step 4 uses it for the actual codebase search (module structure, abstractions, control flow) instead of manually reading every file.
Source
SKILL.md on GitHub — the file this page was generated from.