Skip to content

Releases: tomershahar/team-foundry

v3.6.0 — Context health doctor + verified tool routing

Choose a tag to compare

@tomershahar tomershahar released this 02 Jul 14:19

What's new

doctor — context health score

  • npx create-team-foundry doctor scores context health 0–100 across five explained categories (completeness, freshness, connectedness, ownership, tool routing) and recommends the single highest-leverage fix. --json emits a versioned schema for automation. Advisory-only by design — status --ci remains the enforcement surface.
  • Doctor, status, and the CI gate share one analysis, so the three can't disagree about what counts as drift.

Verified AGENTS.md routing

  • New compatibility matrix documents the loading contract per tool with evidence status. The route is UAT-verified end-to-end for Codex, Cursor 3.9.16, Gemini CLI 0.28.2, and Claude Code 2.1.198 (evidence).
  • Cursor and Gemini pointers now use @AGENTS.md imports while keeping an explicit read-AGENTS.md instruction as the guaranteed fallback.

Safer merges and migration

  • Cursor rule merges are frontmatter-aware: your description/globs are preserved, alwaysApply: true is ensured, and BOM/CRLF files no longer produce duplicate frontmatter.
  • v3.3 migration now covers Copilot instructions via a merged, clearly-marked team-foundry section (your content is kept), disclosed accurately before you confirm.
  • Setup only asks merge/replace/skip for files your selected tools will actually write.

Evidence-led README

  • The README leads with a controlled same-prompt comparison (0/5 without context, 5/5 with) and real doctor output, with raw captures preserved in docs/evidence/.

Install: npx create-team-foundry@latest · Try it in 10 seconds: npx create-team-foundry playground

Full changelog: v3.5.0...v3.6.0

v3.5.0 — time-to-aha, drift gate, wider tools, feedback funnel

Choose a tag to compare

@tomershahar tomershahar released this 15 Jun 14:26

What's new (Time-to-aha + drift gate)

Project identity auto-extraction

  • AGENTS.md now opens with a real project overview auto-detected from package.json (name + description), falling back to your README's title and first paragraph. No network, no AI — purely local.
  • Empty owner: frontmatter is pre-filled with your git config user.name (still editable). Closes the gap where the "Standard Scan" prompt promised more than the CLI delivered.

Playground mode

  • npx create-team-foundry playground scaffolds the fully-populated Clearline example into team-foundry-playground/ so you can experience the tool in under a minute, before doing any onboarding. Refuses to overwrite a non-empty playground directory.

Drift gate for CI

  • npx create-team-foundry status --ci runs the existing drift checks non-interactively and exits 1 on missing files or link-integrity issues (stale/empty are warn-only). --max-stale=N also fails when more than N files are stale.
  • npx create-team-foundry init-ci writes .github/workflows/team-foundry.yml (checks out with fetch-depth: 0 so staleness history is available). See docs/ci.md.

Wider tool coverage

  • New tool options: GitHub Copilot (.github/copilot-instructions.md pointer) and Other (AGENTS.md only, for any tool that reads it natively — Codex, Copilot CLI, Windsurf). "All tools" now includes the Copilot pointer. Pointer-drift detection and detect-and-merge cover the new files too.

adopt — bring your existing rules

  • npx create-team-foundry adopt imports pre-existing AI config (.cursorrules, .windsurfrules, .clinerules, CLAUDE.md, GEMINI.md, AGENTS.md, .github/copilot-instructions.md, .cursor/rules/*.mdc) into team-foundry/context/imported-rules.md with provenance, so a team moving to team-foundry doesn't start from a blank page. Skips files already managed by team-foundry; refuses to clobber an existing import.

More accurate drift detection

  • The outcome↔assumption link check is now ID-based (O1/A1) and symmetric: a reference in either file links both, grouping headings are no longer mistaken for items, and it stays silent on freeform prose. Fixes false positives that flagged correctly-linked files (including the bundled example, which now passes its own status --ci). Templates suggest the ID convention.

Feedback funnel

  • npx create-team-foundry feedback opens a prefilled GitHub issue (title, body, and environment filled in) so feedback is one command away instead of "go find the repo." A one-line nudge now appears at value moments — the status output and the playground outro (re-run regularly), not just the install screen.

README evidence pass

  • README now shows a real generated AGENTS.md excerpt, a before/after, a commands table, and which files humans edit vs the CLI owns.

Internal

  • src/extract.ts — pure, unit-tested identity extraction (fs/exec isolated at the edge).
  • status.ts refactored so the human view and --ci gate share one gatherStatus() analysis path; ciExitDecision() is pure and unit-tested.
  • scripts/gen-playground.mjs regenerates the bundled playground content from example/.

v3.4.0 — skills discovery fix + honest staleness signals

Choose a tag to compare

@tomershahar tomershahar released this 09 Jun 19:28

Fixed

Claude Code skills are now actually discovered (important — upgrade recommended)

  • Skills were written as flat .md files directly in .claude/skills/, a layout Claude Code does not discover. All six skills were silently non-functional in every install to date.
  • Skills are now written as .claude/skills/<name>/SKILL.md per the skills spec.
  • Existing installs: run npx create-team-foundry migrate — it moves the old flat files into the new layout automatically (idempotent, never overwrites your edits, leaves your own custom skills alone).

status staleness signal works on squash-merge repos

  • Activity was counted with git log --merges, which is always 0 on squash-merge workflows. It now counts all commits; the output column is "Commits" instead of "PRs".

status no longer trusts stale frontmatter alone

  • A file's effective last-updated date is the more recent of its last_updated frontmatter and its last git commit date.

CLI safety fixes

  • Ctrl-C on the "Continue anyway?" prompt no longer proceeds as yes.
  • Stack auto-extraction prefers the target directory's package.json over the invocation directory's.

Internal

  • New src/manifest.ts is the single source of truth for every generated file; scaffold and status both derive from it, with drift-guard tests.

Full changelog: https://github.com/tomershahar/team-foundry/blob/main/CHANGELOG.md