Repository navigation
Releases: matt-cochran/junior
Release list
v0.5.1
Fixed
junior updaterefreshes the cached update summary once the newer releases
are adopted, so the startup notice andjunior doctorreadiness stop
reporting the components that were just installed.junior setuprecords the companion skill files its installers create in the
repository-local.git/info/exclude, matchingjunior init; outside a Git
repository it stays silent.
v0.5.0
Added
- Harness detection for Claude Code, Cursor and Codex (
junior doctor --harness), listing each harness's skill roots and MCP config locations. junior doctorreports a per-harnessreadinessobject covering skills, MCP
registration, managed tools and cached updates, with onejunior setupfix
command;inspectMcpRegistrationreads Claude (project/user/local), Cursor
and Codex MCP configs read-only.junior setuppreviews the ordered repair plan and confirms before applying
it;--dry-runpreviews only,--yesapplies non-interactively, and a
non-TTY run refuses to change anything without--yes.- Startup update notice: a cached 24-hour check over Junior, the managed tools
and the companions prints one stderr line oninit,doctor,statusand
validate;JUNIOR_NO_UPDATE_CHECK=1disables it. - Jev tool routing: the readiness call returns one probability per task trait,
selects deterministic playbooks and attaches atoolPlan(worker directions
plusmanagerSetup) to the receipt; injev.mode: enforcea required tool
with unmet setup returns atool_setupclarify before the worker starts. - Multi-tool playbooks and a deterministic capability map (
playbooks/),
with the routing evaluation set intasks/routing-eval;junior matrix sync --source playbookspublishes the map into Crossmatrix. - Cross-tool state mirror:
junior matrix sync --source staterecords cpm
status, fmeca failure modes, elicitation claim standing, scientific-process
verdicts and jevitate journey results as idempotent Crossmatrix observations. - Crossmatrix autopilot:
junior matrix bootstrapproposes
feature/journey/job/test -> code links with evidence and confidence,junior matrix confirmrecords a reviewed selection, andjunior matrix autolink
links completed cpm deliverables' results. - Context graph and impact analysis:
junior matrix graphwalks the store to a
bounded, deterministic slice with a contractcontextarray, and--impact
turns changed files into focused test and jevitate checks. junior matrix qcaudits Crossmatrix links (stale, contradictory, coverage
gaps, Jev plausibility) into an advisory review queue and never writes.junior matrix analyzescores items x criteria x scales with batched Jev
cells and weighted ranking, coverage, orphans and sensitivity, with
decision-matrix,house-of-quality,traceabilityandrisk-matrix
presets and optional--record.junior matrix adr new|lint|sync|check: MADR records with checkable rules,
published as anadrdimension and scored for conformance; Junior's first
four ADRs live indocs/adr/.junior matrix jtbd seed|evidence|draft: jevitate jobs seed elicitation
coverage, journey results become evidence, and a ready spec becomes unapproved
job drafts.junior matrix plan-from-spec: turns an elicitation spec (or--session)
into a lint-clean draft cpm plan with deliverables per requirement and
evidence-only edges;--suggest-edges,--codemap,--allow-unreadyand
--forceare supported.- Prepare workflow and check-back:
junior handoff --choose <option> --correct <id>=<text>consumes aneeds_choicebrief (numbered U/A items, scored
options, recommendation), gated bycheckBack: auto|always|off. - Clarification loop: an unclear contract (or a vague-feature routing) opens an
elicitation session and returns aneeds_answersbatch of ranked questions
with the reason and any suggested answer;junior handoff <task.json> --answers <file>records assent, refutation or amendments until the
readiness gate passes, then drafts a cpm plan (plan-sized work) or a
prepare brief. Same gating as the check-back: an explicit workflow is never
replaced. discoverandinvestigateanalysis workflows: an elicitation-backed
requirements interview and one scientific-process experiment per handoff.- Managed tools
scientific-processandelicitation: installer, npm
companions, agent skills, hop native state (SCIENTIFIC_PROCESS_STATE_DIR,
ELICITATION_STATE_DIR), read classification and MCP names. Their releases
are reported asunavailableuntil published.
Fixed
- A playbook activates only when its primary trait reaches 0.5, so a vague
request no longer selectsvague-featureat a 0.10 primary-trait score.
v0.4.0
Added
junior doctorreports companion agent-skill readiness ascompanionSkills:
each skill ispresent,missing,modified,unknownornot_installed,
and an unready one carries a completejunior init --target ...remediation
command. Skill readiness is reported separately and never gatesok(#39).- The Pi guard extension (
pi-guard.ts) makes every bash tool call read stdin
from/dev/nulland caps its timeout ten seconds under
execution.toolTimeoutMs(half the budget below 20s), so a slow command fails
only that call before Junior's watchdog; a timed-out tool is named in the
receipt astimedOutTool(#42). execution.maxOutputBytes(1-32 MiB, default 8 MiB) bounds the retained
worker output; the retained Pi event stream is compacted and oversized tool
text is written once totool-output/<toolCallId>.txtbehind a head/tail
marker (#41).execution.continuations(0-3, default 1) starts an automatic fresh-session
continuation segment after an output-capped segment, writing
checkpoint-<n>.mdandevents-<n>.jsonl(#41).junior validateadds non-blocking split warnings for a contract naming more
than six distinct context paths or more than ten acceptance criteria (#41).- The cpm tool's
plan.reviewsees Junior's managed OpenRouter key when no
explicit key is set, andjunior tools inspectreports review-key visibility
ascpmReviewwithout its value (praxec/cpm-planner#72).
Changed
- A tool command that is not Junior's managed binary records the version it
reports through--version(unknownwhen none) and an empty source SHA,
instead of a built-in last-known release table that went stale with every
upstream release.
Fixed
- Local git excludes are verified with
git check-ignore; a pattern Git does
not apply is reported inunappliedand named in an error instead of being
recorded as added (#40). isolationSetupprovisioning is idempotent in a resumed worktree: an
existing link that already points at the source is satisfied instead of
failing with EEXIST, while a link to a different target still fails (resumed
worktree link fix).
v0.3.2
Fixed
junior tools initno longer records stale tool provenance when no managed
install exists: the fallback is now the current releases (fmeca 0.2.0,
cpm-planner 0.2.2, Crossmatrix 0.3.0), and a managed install's version is only
recorded when the tool's command is that managed binary (#36).- FMECA
vetis classified as a read, like cpmplan.review: it is an advisory
model call that never changes state, so it is snapshotted and no longer
invalidates manager acceptance (#35). tools/README.mddocuments the current read/command table, provenance, and
the Crossmatrix 0.3.0 query and command request shapes (#35, #36, #37).
Published as @matthew-cochran/junior@0.3.2 (#38).
v0.3.1
Added
junior updateupdates Junior itself from npm first, then re-runs as the
new version to update every managed binary, companion and skill;
--no-selfskips it and source checkouts are never touched.junior doctor --check-updatesreports Junior's own version.junior updaterefreshes an installed managed TRIZ without--with-triz.
Fixed
- The managed TRIZ install keeps the release's package name and version, which
TRIZ 0.3+ needs at import time (update --with-trizfailed on v0.3.0). - npm and npm-installed companion CLIs (
.cmdshims) are spawned correctly on
Windows.
Published as @matthew-cochran/junior@0.3.1 (#34).
v0.3.0
The Crossmatrix hub: Junior ties CPM, FMECA, jevitate, tests and code
together in a committed .crossmatrix/ store (requires Crossmatrix 0.3.0).
Added
junior matrix exportandjunior matrix sync: turn code, tests, jevitate
jobs/personas/journeys, CPM deliverables and FMECA failure modes into
Crossmatrix dimensions with content hashes; an unchanged re-sync is a no-op.junior matrix init: create the project's committed.crossmatrix/store.- The code map:
junior matrix codemap init,junior matrix link(record
the files a handoff changed against its feature),junior matrix files,
junior matrix context(a contractcontextarray) and
junior matrix stale(links to re-confirm after changes). - Crossmatrix as an npm companion with its agent skills.
junior tools calluses the project's.crossmatrix/store with
Crossmatrix 0.3.0+ instead of replaying the model on every call.- The Crossmatrix hub section in the manager skill.
- A slim README with reference documentation under
docs/, and this changelog.
Published as @matthew-cochran/junior@0.3.0 (#30, #31, #32, #33).
v0.2.1
Fixes
- Hitting the worker output cap stops the worker (
output_truncated) instead of running to the deadline (#26). junior updateno longer re-downloads managed tools already at the latest release (#27).JUNIOR_NO_INSTALL=1blocks every install path; tests set it so they can never touch a global install (#28).
Published as @matthew-cochran/junior@0.2.1 (#29).
v0.2.0
Highlights
junior initinstalls Pi, the checksum-verified managed FMECA/CPM/Crossmatrix binaries and the npm companions (fmeca, cpm, jevitate, triz) with their agent skills;junior updateanddoctor --check-updateskeep them current.- New commands:
auth set|remove,doctor --online,mcp register,report-issue,status --live. - Contracts:
contextexcerpts, conditional acceptance ({text, when}→not_applicable),checkReserveMs(checks still run after a deadline stop),isolationSetup(provision worktrees with links/copies/commands). - Clearer Jev attention (trigger, probability, threshold, reason) and quoted-span evidence labels in analysis reports.
Fixes #6, #7, #8, #10, #11, #12, #15, #17, #18, #19, #20, #21, #22, #23, #24 (#25).
Published as @matthew-cochran/junior@0.2.0.
v0.1.0
Initial release: bounded deliverable handoffs to commodity models through Pi, compact receipts with independent checks, worktree isolation, Jev readiness and completion gates, and the FMECA/CPM/Crossmatrix handoff (HOP) tools. Published as @matthew-cochran/junior@0.1.0.