Knowledge Base for JunieBusabase × Junie

Knowledge Base for Junie

Junie can run in JetBrains IDEs, an interactive CLI, headless CI, GitHub Actions, and GitLab pipelines. Project trust, guidelines, Skills, MCP, approval modes, sandbox policy, and review agents shape each run differently. Durable knowledge starts by naming that execution surface.

Cross-surface evidence proposalAwaiting accountable review
Busabase reviewing evidence from a Junie task
IDE convenience, CLI controls, and CI automation are separate execution contexts even when they share one repository.

Execution surfaces

IDE, CLI, and CI runs do not inherit one identical trust and approval model.

Junie works inside JetBrains IDEs, in an interactive terminal, and headlessly in pipelines. Record the surface, authentication, repository checkout, model/provider, and whether a human could intervene.

SurfaceHuman interactionPrimary evidence
JetBrains IDEInteractiveIDE actions, inspections, diff
Junie CLIInteractive or headlessSession events, commands, files
GitHub ActionPipeline-triggeredPR, checks, action logs
GitLab CI/CDIssue/MR-triggeredPipeline, MR, artifacts

Project trust

A repository can be writable while its Junie configuration remains deliberately untrusted.

Interactive CLI asks before loading project config, MCP, hooks, agents, commands, Skills, guidelines, and project memory. An untrusted project uses temporary Junie storage. Non-interactive and ACP launches are trusted by design because they cannot prompt, so pipeline governance must be explicit.

PATH CANONICALIZED

Symlinks and scope resolved

TRUST DECISION

Exact project or parent scope

CONFIG LOADED

Only trusted project sources

TASK EXECUTED

Surface-specific controls apply

OUTCOME REVIEWED

Owner accepts shared state

Guidelines and memory

AGENTS.md supplies persistent guidance; memory remains context that must be curated.

Junie resolves `.junie/AGENTS.md`, root AGENTS.md plus playbook/rules, and legacy guidelines in a defined order, then combines project and global guidance. Keep instructions concise and versioned. Move changing decisions into reviewed records instead of teaching them as permanent behavior.

PROJECT GUIDELINES

Repository conventions and commands

GLOBAL GUIDELINES

Personal or organization-wide preferences

MEMORY

Context extracted for later sessions

REVIEWED RECORD

Accepted state with owner and freshness

Agent Skills

Portable Skills encode focused procedures and support files, not current approval state.

Junie loads Skills from project, user, `.agents`, extension, and custom locations. They may run automatically or via slash command and can execute bundled scripts. Review third-party Skill content and pin its revision before using its output as evidence.

SKILL OWNS

Procedure, templates, scripts, domain checklist

RECORD OWNS

Accepted outcome, responsible owner, lifecycle

Approval stack

Action Allowlist, Brave mode, and sandbox reduce friction and blast radius in different ways.

Allowlist entries skip prompts for selected action types. Brave mode controls how often Junie asks. Sandbox wraps terminal commands only and does not cover file edits, MCP servers, hooks, or Junie-managed Git operations. None of these controls approve a business claim.

ControlWhat it changesWhat it does not prove
Action AllowlistFuture prompts for matched actionsThat the result is correct
Brave modeAsk / auto / broad execution behaviorThat credentials are appropriate
SandboxTerminal filesystem/network blast radiusThat all Junie actions are isolated
Change RequestAcceptance into shared recordsThat execution can be repeated

MCP scopes

Project and user MCP configs have different sharing and secret risks.

Junie uses `.junie/mcp/mcp.json` for project scope and `~/.junie/mcp/mcp.json` for user scope, supports local and remote servers plus OAuth, and reports runtime status. ACP clients can list supplied and local servers but do not edit configs through the installation assistant.

PROJECT MCP

Shareable config; never commit secrets

USER MCP

Private machine-wide configuration

ACP SESSION

Client-supplied and local runtime list

REVIEWED RESULT

Evidence-backed state after execution

Review evidence

Junie's code review agent is read-only analysis; accepting a suggestion is still a separate action.

The review agent reads diffs and project context without editing files, running builds/tests, committing, or pushing. Preserve the review target, finding, acceptance or dismissal, subsequent patch, tests, and final repository revision.

01 · TARGET

Branch, commit, range, staged or unstaged diff

02 · FINDING

Read-only review comment

03 · DECISION

Accept or dismiss

04 · PATCH

Separate implementation

05 · VERIFY

Tests and final revision

Busabase record preserving Junie review evidence

Knowledge contract

Connect the repository outcome to the Junie surface and control state that produced it.

The record remains compact while keeping enough provenance to reproduce or challenge the result.

outcome_keyStable identity
execution_surfaceIDE, CLI, GitHub, or GitLab
session_or_runSession, pipeline, or action reference
trust_configProject trust and config digest
guidance_refsAGENTS.md, Skills, and memory used
action_evidenceCommands, MCP calls, diffs, logs
verificationReview findings, tests, readback
owner_decisionAccountable acceptance and freshness

Practical questions

Junie knowledge base FAQ

Does Busabase replace Junie guidelines?

No. Guidelines shape Junie behavior. Busabase stores selected reviewed outcomes.

Is an untrusted project unreadable to Junie?

No. Current docs say ordinary workspace file operations remain available while project-provided Junie configuration is not loaded.

Does sandbox cover MCP and file edits?

No. Current Junie docs limit sandbox wrapping to terminal commands.

Does an Action Allowlist entry approve an MCP result?

No. It can remove a confirmation prompt; the result still needs evidence and review.

Can code review findings become records directly?

Keep the finding as evidence, then record the accepted patch, verification, owner, and final revision.

Start with one verified Junie run

Name the surface, trust decision, controls, and final repository evidence.

Choose one IDE, CLI, or CI task that reached a stable outcome. Preserve its execution boundary and submit only the reusable result for review.