Skip to content

Releases: e-t-y-b/etyb-skills

v5.0.0

Choose a tag to compare

@github-actions github-actions released this 06 Jul 08:44
8323341

[5.0.0] — 2026-07-06

Plugin-native distribution + deterministic hook enforcement + Claude 5. v5 lands the full M1+M2+M3 scope of the skills-only 5.0 plan — this is the complete 5.0 release; there is no skills 5.1 (further MCP/memory work moves to the separate etyb.ai product).

Changed

  • M1 (universal core): skills/etyb/SKILL.md rewritten to the Agent Skills open-spec subset: 967-char description (spec cap 1,024), 76-line body with the Tier 0-4 table inline — Tier 0 requests need zero additional file reads. core/signature.md, core/response-formats.md, core/scale-calibration.md, core/always-on-protocols.md consolidated into core/session.md; core modules total −40% words. Progress-marker and clarifying-question contradictions resolved (CTO-voice status lines, cap of 3, everywhere). Root AGENTS.md added (open standard); CLAUDE.md reduced to an @AGENTS.md import plus Claude-only notes. Whole-repo version 5.0.0 under the single-version policy.
  • M2 (agents & hooks): five agent definitions under agents/ (explorer, planner, reviewer, stack-researcher, cartographer; memory: project) with model tiering — light work (explorer's search-and-cite, stack-researcher's fetch-and-distill) pins to the smallest model tier (model: haiku, mirroring the Codex emissions' gpt-5.4-mini); extensive-reasoning work (planner, reviewer, cartographer) inherits the user's session model. Pins only ever go down: the user-selected model is the ceiling, and any harness that can't resolve the field falls back to the session model. Hook scripts rewritten to the stdin-JSON contract (advisory systemMessage warnings, 21 tests) and wired via plugin hooks/hooks.json; deterministic adapter generator emits Codex TOMLs, Kiro agent JSONs, and a Cursor plugin skeleton under dist/adapters/. All five hooks verified firing against a real local Claude Code plugin install (see docs/plan/skills-5.0-plan.md M2-T4 for the observed transcript).
  • M3 (remote stacks): manifest.json gains a generated 538-page stacks_pages array (scripts/build-manifest.sh); the stack-researcher agent owns the manifest-driven fetch + currency protocol; per-page currency checking with a batch-stamp detector (now hard-fails, CHECK_CURRENCY_STRICT=1); the anthropic-claude stack refreshed to the Claude 5 generation (Sonnet 5 / Opus 4.8 / Haiku 4.5 / Fable-Mythos tier) with per-page verification stamps, spot-checked against live Anthropic docs at release time. All 13 stack SKILL.md descriptions compressed under the 1,024-char open-spec cap (prose kept, trigger lists trimmed to the strongest signals); the token-budget lint now hard-fails over-cap descriptions.

Removed

  • scripts/install.sh, scripts/update.sh, scripts/install-codex-runtime.sh and their tests — distribution is npx skills add e-t-y-b/etyb-skills (multi-harness) or the Claude Code plugin (.claude-plugin/plugin.json, name etyb, added).
  • The three pre-release role skills (/etyb-review, /etyb-plan, /etyb-explore) and their Claude fork overlays, withdrawn before tagging. /etyb is the single trigger surface — the only skill a user (or auto-trigger) ever invokes. The same review/plan/explore work runs through the agents/ definitions, dispatched by the orchestrator into sub-agent contexts, so the user's session context stays clean. This also closed a review finding: the fork overlays only existed in dist/, so the installed role skills would have run inline — contradicting their own "fresh context" promise. Removing the surface removes the gap.

Fixed

  • Docs no longer claim hook enforcement that is not wired — docs/installation.md's Enforcement Status note now accurately describes the advisory (non-blocking) hooks shipped on the Claude Code plugin path; the old lint check against gitignored .claude/settings.json — which could never pass on a clean clone — replaced with hook-script existence checks.
  • New scripts/lint-token-budget.sh in CI enforces description caps; all 13 stack descriptions compressed under the spec cap (M3-T5).
  • hooks/session-start-memory.sh shipped without the executable bit, which would have made the SessionStart hook fail with "permission denied" on a real plugin install; fixed.
  • .claude-plugin/marketplace.json's plugin entry declared a redundant skills component list that conflicted with plugin.json's convention-based auto-discovery, causing claude plugin install to report the plugin as failed to load; removed.
  • .gitignore's MARKETPLACE.md pattern (intended only for the repo-root internal doc) was unscoped and silently excluded stacks/vercel/marketplace.md from version control on case-insensitive filesystems; anchored to /MARKETPLACE.md and recovered the untracked page.
  • Release-time truth sweep: CLAUDE.md, AGENTS.md, and README.md still said hooks and agent definitions "arrive in M2 — do not assume they exist" after M2 shipped them; all three now describe what actually installs. The marketplace plugin description double-counted the roster ("20 specialists + 9 protocols + 6 verticals" — the 20 already included the verticals); corrected to 14. A stale "Pro tier only" line in core/team-registry.md (tiers were removed in v4.0.0) dropped.

v4.0.2

Choose a tag to compare

@github-actions github-actions released this 15 May 23:03
a809d7a

[4.0.2] — 2026-05-15

Removed

  • etyb-oss-maintainer skill is no longer in this repo at all. v4.0.1 moved it from .claude/skills/ to internal/ to keep it out of the npx skills CLI listing. v4.0.2 takes the next step: the skill is maintainer-personal tooling, not project artifact, and now lives in the maintainer's home directory (~/Utility/SKILLS/ETYB, symlinked to ~/.claude/skills/etyb-oss-maintainer). The slash command moved to ~/.claude/commands/etyb-oss-maintainer.md. Public clones of etyb-skills carry zero trace of it.
  • .gitignore simplified — the .claude/ directory is now ignored wholesale (no exceptions needed for the maintainer skill or its slash command, since both moved out of the repo).

Changed

  • scripts/maintainer/audit-repo.sh — the maintainer-skill regression check now treats any in-repo trace of etyb-oss-maintainer as a leak (previously only flagged .claude/skills/). This catches the case where the skill could re-creep back via internal/ or anywhere else.

v4.0.1

Choose a tag to compare

@github-actions github-actions released this 15 May 22:55
978681e

[4.0.1] — 2026-05-15

Fixed

  • Install no longer surfaces the internal maintainer skill. npx skills add e-t-y-b/etyb-skills previously reported "Found 2 skills" — etyb plus etyb-oss-maintainer. The maintainer skill is repo-internal tooling, not for end-user installation, but it lived under .claude/skills/ which the agentskills.io / npx skills CLI scans. Moved to internal/etyb-oss-maintainer/ (outside any directory the CLI scans). The /etyb-oss-maintainer slash command and audit script were updated to the new path; the local-only maintainer workflow is unchanged.

v4.0.0

Choose a tag to compare

@github-actions github-actions released this 15 May 21:59
952744c

[4.0.0] — 2026-05-15

One brand. One channel. 13 vendor Stacks live in-repo. v4 is the largest release in the project's history — three changes in one:

  1. Structural collapse 30 → 1. Where v3 surfaced 30 separate slash commands (one per specialist + protocol + vertical), v4 ships a single coordinated skill (/etyb) holding all 29 as internal references. The user always talks to /etyb; ETYB silently routes to the right expertise. Every Tier 1-4 response is signed (ETYB · <role-engaged>) and links the public changelog.

  2. Vendor knowledge lives in-repo under stacks/<vendor>/. v4 brings ~525 currency-stamped markdown pages — one per product, plus composed per-role views, across 13 vendor Stacks — alongside the slim SKILL.md trigger pointer in each Stack folder. When a user's request hits a Stack, ETYB reads the relevant page directly from disk. For third-party agents without the install, the same content is reachable as raw markdown at https://raw.githubusercontent.com/e-t-y-b/etyb-skills/main/stacks/<vendor>/<page>.md.

  3. Knowledge-currency framework. Every Stack page carries last_verified_on, drift_risk, and authoritative_url in YAML frontmatter. The drift-check protocol in core/knowledge-currency.md governs the soft path (disclose currency + source) vs. strict path (defer to vendor MCP/skill, or WebFetch the authoritative URL) keyed off the fetched page's metadata. The maintainer-side validator scripts/maintainer/check-currency.sh probes the local pointer freshness AND the per-page authoritative_url reachability under CHECK_CURRENCY_FETCH=1.

Why this is a major release

  • Slash-command pollution gone. v3 had 30 trigger surfaces competing at activation time. v4 has one. The router becomes ETYB's responsibility, not Claude's.
  • Vendor content stops shipping in the install. Pre-v4 had ~57K lines of role-overlay markdown sitting on every user's disk going stale between releases. v4 fetches it live; the install carries detection + delegation + gotchas only.
  • Brand consolidation. Every response now identifies as ETYB and links to etyb.ai/changelog. Users don't have to remember 30 names; they remember one.
  • Skill-creator-compliant. This aligns the repo with Anthropic's Domain Organization guidance: one skill with internal references/<variant>/ files, rather than 30 sibling skills.

Added

  • skills/etyb/references/specialists/ — 14 core specialist READMEs (was: skills/<name>/SKILL.md).
  • skills/etyb/references/protocols/ — 9 always-on protocol READMEs.
  • skills/etyb/references/verticals/ — 6 vertical-domain READMEs.
  • skills/etyb/core/signature.md — output template appended to every Tier 1-4 response: a divider line, ETYB · <role-engaged>, and What's new — etyb.ai/changelog. Tier 0 skips the signature; Tier 2 incidents skip the changelog line to keep firefighting output lean.
  • skills/etyb/core/knowledge-currency.md — two-layer Stack architecture (slim trigger pointer + per-product / per-role pages, all in-repo) with the tiered drift-check protocol. Soft path discloses currency; strict path defers to a vendor MCP/skill or WebFetches the authoritative URL. Includes degraded-mode handling for 404 / network failure / stale-high-drift content.
  • Stack v2 schema in every Stack frontmatter — last_verified_on, authoritative_sources.primary, delegate_to_skills, products_covered with per-product drift_risk and notes.
  • 13 slim local Stack pointers under stacks/<vendor>/SKILL.md — Salesforce, AWS, GCP, Azure, Anthropic Claude, OpenAI, Cloudflare, Vercel, Supabase, Firebase, Expo, Stripe, Observability (multi-vendor). Each ~125-200 lines: detection signals, delegation map, products list, top 5-10 platform gotchas. Per-product depth lives at stacks/<vendor>/<product>/; per-role composed views at stacks/<vendor>/<role>/.
  • scripts/maintainer/check-currency.sh — walks every local Stack pointer, flags products whose drift_risk threshold has been exceeded (high=90d, medium=180d, low=365d). Under CHECK_CURRENCY_FETCH=1 also probes stacks/<vendor>/ for reachability (v4 invariant: every local pointer must have a published canonical page) and smoke-checks authoritative_sources.primary URLs. Wired into validate-pr.sh.
  • .claude/skills/etyb-oss-maintainer/references/currency-spec.md — maintainer playbook for the currency model: refresh-PR flow, delegation maintenance, anti-patterns.
  • v3→v4 migration check in scripts/install.sh — detects sibling skills from v3.x installs (research-analyst/, tdd-protocol/, etc.) and offers to back them up so they don't compete with /etyb at trigger time. Also rewrites stale Claude-Code hook paths in .claude/settings.json.
  • scripts/maintainer/v4-migrate-skill.sh — the migration helper used to move the 29 sibling skills into internal references. Kept in the repo for future similar restructures.

Changed

  • skills/etyb/SKILL.md — new description optimized for v4 collapsed routing (~210 words, category-level triggers rather than enumerated keywords from 29 deleted skills). "Internal References" section now states that vendor knowledge is remote (fetched from stacks/), not bundled.
  • skills/etyb/core/team-registry.md, core/charter.md, core/always-on-protocols.md, all other core files — references rewritten from skills/<name>/ paths to references/<library>/<name>/ paths.
  • skills/etyb/core/stack-registry.md — detection workflow rewritten around the stacks/ fetch contract. Per-Stack sections now show both the slim local pointer and the canonical stacks/ URL. Authoring section: publish on stacks/ first, then register the slim pointer locally.
  • stacks/salesforce/SKILL.md — retrofitted to v2 schema and slimmed (149 → 115 lines).
  • All 13 stacks/<vendor>/SKILL.md files slimmed — body collapsed from per-role overlays + extensive briefing into a thin pointer template (~125-200 lines): detection frontmatter (preserved verbatim), where-the-briefing-lives section pointing at stacks/, top 5-10 currency-anchor gotchas verbatim from the prior body, standing instructions, escalation map. Net: 1,981 lines removed across the 13 SKILL.md files.
  • 7 vendor-heavy specialist files migrated to pointer + platform-neutral summarycloud-aws-specialist.md, cloud-gcp-specialist.md, cloud-azure-specialist.md, llm-specialist.md, ai-integration.md, monitoring-specialist.md, react-native-specialist.md. Each one's vendor-specific content moved into the matching Stack(s); each one now retains the role's platform-neutral principles and points at the Stack(s) for vendor specifics. Net: -6,209 lines / +218 lines across these 7 files.
  • scripts/install.sh — single-mode install. Always copies skills/etyb/. The --tier and --list-tiers flags from the v4-pre prototype are explicitly rejected with an error message pointing at the no-flag flow.
  • .claude-plugin/marketplace.json — one plugin (etyb) that installs the full skill (14 specialists + 9 protocols + 6 verticals).
  • manifest.jsonskills: {...} map collapses to skill: {etyb: 4.0.0}. 13 Stacks declared, each with applies_to_roles and deferred_roles. No tier block, no available_on_tiers per stack.
  • STACKS.md — public-doc v2 schema; Tiers column dropped from the Available Stack Packs table; authoring conventions updated for the docs-first ordering.
  • scripts/maintainer/validate-pr.sh — now includes check-currency.sh in the umbrella suite.
  • scripts/maintainer/validate-skill-manifest-sync.sh — rewritten for v4 single-skill layout. Now FAILS if a .tiers block or any available_on_tiers reappears in the manifest.
  • scripts/maintainer/validate-version-sync.sh — updated for the v4 manifest.json .skill shape (was .skills) and frontmatter consolidation.
  • scripts/lint-portability.sh — rewritten around v4 (1 installable skill, 14+9+6 references, Claude hook paths at v4 locations, no tiers).
  • tests/install/test-install-flags.sh — rewritten to verify the new single-install behaviour and that removed flags (--tier, --list-tiers) are rejected with the v4 error.
  • README.md, CLAUDE.md — rewritten around the one-skill model + stacks/ pointer table.

Removed

  • 29 sibling skill directories (skills/research-analyst/, skills/tdd-protocol/, skills/fintech-architect/, etc.) — content lives under skills/etyb/references/.
  • 13 stacks/<vendor>/references/ directories — ~67 role-overlay files (~57K lines) deleted from the install. Equivalent content republished at stacks/<vendor>/<role>/ and fetched at runtime.
  • Tier system--tier / --list-tiers flags from scripts/install.sh, .tiers block from manifest.json, available_on_tiers field from every stack entry, the tier badge from README, and the install-tier table from CLAUDE.md. Install always copies the full skill; vendor knowledge breadth is governed by what's on stacks/, not by what's on disk.
  • bundles/ — 4 plain-text bundle files. Replaced by the single full install.
  • scripts/generate-bundles.py — no longer needed.
  • Per-sibling evals/ — each sibling shipped its own eval set. Those targeted the deleted shape; we'll rebuild a single eval set for /etyb once the description is empirically tuned.

Release ordering note

The stacks/ site (in e-t-y-b/etyb-dot-ai) MUST be deployed before this release tag is cut. The slim local Stack pointers reference stacks/<vendor>/... URLs; cutting v4.0.0 before the docs site is live ships pointers at 404 destinations. CHECK_CURRENCY_FETCH=1 scripts/maintainer/check-currency.sh is the gate — it MUST pass against production stacks/ before tagging.

Migration notes for v3 users

  • /plugin install etyb-full@etyb-skills/plugin install etyb@etyb-skills
  • `./scripts/install.sh --bundle pro...
Read more

v3.0.0

Choose a tag to compare

@github-actions github-actions released this 11 May 21:00
203ebab

[3.0.0] — 2026-05-12

Stack Packs are here. Salesforce is live. ETYB now ships tech-stack expertise alongside the engineering team — knowledge overlays that load on top of the existing 20 specialists whenever the work involves a specific platform. The first pack ships full Salesforce coverage current to Spring '26, capturing the 2025–2026 platform reset (Agentforce, Data 360, MCP-native dev, Apex Cursors, ECA migration, MFA mandate) that pre-2025 training data misses. Same pattern will land for AWS, GCP, Azure, Vercel, Supabase, Snowflake, Databricks, Stripe, Shopify, SAP, and ServiceNow.

Why this is a major release

This adds a new artifact type to ETYB. Until now, ETYB was specialists + protocols — two orthogonal axes. Now it's specialists + protocols + stack expertise — three orthogonal axes. Stack Packs sit alongside the team without bloating it: a Salesforce engagement still routes to backend-architect, frontend-architect, security-engineer, and ai-ml-engineer — but each one picks up the platform overlay for that engagement. When the work changes stack, the overlay rotates; the team doesn't. The architecture scales by adding folders, not roles.

This release also adopts single-version semantics. Every skill, every stack, every artifact tracks the bundle version on every release. No more per-skill version drift (which had silently put etyb at 2.0.0 in SKILL.md and 2.1.0 in the manifest before this release).

Added

  • Stack Packs — new top-level artifact type. Each pack lives under stacks/<name>/ with a SKILL.md orchestrator briefing and per-role overlays at references/<role>.md. ETYB's router loads them via the new skills/etyb/core/stack-registry.md when stack signals match the user's request. Packs compose across roles, defer to vertical specialists on compliance, and always-on protocols still apply unchanged.
  • Salesforce Stack Pack — full 11-role coverage current to Spring '26 (API v66.0), Dreamforce '25, and TrailblazerDX 2026. Each role gets a focused overlay:
    • system-architect — primitive selection (Flow vs Apex vs Agentforce vs MuleSoft vs external), Headless 360 patterns, org-strategy decisions, integration-boundary calls.
    • backend-architect — modern Apex (Cursors, user-mode SOQL, transaction finalizers, Queueable patterns), Pub/Sub API, MCP authoring + Apex-as-Agent-Action plumbing, Named & External Credentials, bulkification and the trigger handler pattern.
    • frontend-architect — LWC 2026 (TypeScript types, lightning/graphql, reactive screen flows, LWR for Experience Cloud, Lightning Out 2.0), wire-first data, Aura → LWC migration, LWC Jest testing.
    • ai-ml-engineer — Agentforce design (Topics / Actions / Guardrails / Atlas Reasoning Engine), Prompt Builder, Agent Script for deterministic flow, BYOM via Einstein Studio, Data 360 grounding with vector search, MCP-native development, Voice agents, the three Agentforce pricing models.
    • database-architect — Data 360, Zero Copy with Snowflake / Databricks / BigQuery, BYOM data plumbing, Big Objects vs Data 360, calculated insights, sharing-aware data modeling, LDV patterns.
    • devops-engineersf CLI (replaces deprecated sfdx alias), scratch orgs, 2GP unlocked / managed packaging, source format, DevOps Center vs Copado / Gearset / AutoRABIT, smart test selection (Spring '26), Agentforce Vibes IDE.
    • security-engineer — Einstein Trust Layer (deep architecture), External Client Apps migration mandate (May 11, 2026), MFA enforcement (phased June–August 2026), Shield (Platform Encryption / Event Monitoring / Field Audit Trail), permission sets and PSGs, FLS / CRUD code-layer enforcement (WITH USER_MODE), AppExchange Security Review prep.
    • qa-engineer — Apex tests with meaningful assertions (≥85% target), bulk path testing, LWC Jest, Salesforce Code Analyzer + Graph Engine for SOQL injection and FLS gap detection, ApexGuru for runtime performance, smart test selection (Spring '26), UTAM / Provar for E2E.
    • saas-architect — multi-tenant patterns on the platform, ISV distribution shapes (2GP managed, OEM, Embedded Apps, Internal SaaS), AppExchange Checkout 2.0, Salesforce Marketplace, License Management App.
    • healthcare-architect — Health Cloud data model, Industries FHIR R4 + HL7 v2 adapters, OmniStudio for clinical workflows, Agentforce Health agents. Thin overlay — defers to healthcare-architect for HIPAA / FHIR semantics / audit retention policy.
    • fintech-architect — Financial Services Cloud data model, MuleSoft Banking Accelerator, Pub/Sub for transaction events, Open Banking adapters, Agentforce Financial Services agents with deterministic money-movement gates. Thin overlay — defers to fintech-architect for ledger / PCI / PSD2 / AML interpretation. Salesforce is NOT the ledger.
  • 2025–2026 platform reset captured. Every overlay reflects the renames, retirements, and additions that an LLM with a pre-2025 cutoff will get wrong: Einstein Copilot → Agentforce (Jan 2025), Data Cloud → Data 360 (Dreamforce '25), Apex Cursors (Spring '26), LWC lightning/graphql + TypeScript types (Spring '26), Salesforce-Hosted MCP Servers (GA April 2026), Headless 360 (TDX 2026), External Client Apps mandatory by May 11 2026, MFA mandate phased June–August 2026, Flow Orchestration going free (Feb 2026), Heroku end-of-new-enterprise-sales (Feb 2026), Salesforce Functions retirement (Jan 2025).
  • STACKS.md — top-level registry of available Stack Packs with version, last-verified release, status, and authoring conventions for the next pack.
  • skills/etyb/core/stack-registry.md — ETYB router cue layer for tech-stack detection. Sits alongside team-registry.md. Includes positive signals (Salesforce / Apex / LWC / Agentforce / sfdx / Trailhead / Dreamforce / TDX / 60+ keywords) and negative signals so migrating off a stack doesn't falsely activate the overlay.
  • manifest.json stacks section — first-class versioned registration of stacks alongside skills, with last_verified_release, verified_on, and applies_to_roles per stack.
  • MARKETPLACE.md Stack Packs section — new lane in the marketplace copy that introduces Stack Packs alongside the existing 30 skills.

Changed

  • Single-version semantics. The bundle version is now THE version. Every skill (30), every stack (1), every artifact tracks it on every release — including manifest.json .skills.*, manifest.json .stacks.*.version, and every SKILL.md frontmatter metadata.version. scripts/maintainer/validate-version-sync.sh is extended to enforce this; the validator now fails the release if any per-skill or per-stack version drifts from VERSION. The 5 historical bundle files (VERSION, package.json, manifest.json .bundle.version, .claude-plugin/marketplace.json, .claude-plugin/plugin.json) plus all per-artifact locations move together.
  • skills/etyb/SKILL.md core modules table — adds core/stack-registry.md. ETYB reads it after team-registry.md to detect tech-stack signals and load the matching pack.

Roadmap

Future Stack Packs on the candidate list, in rough priority order based on common ETYB use cases:

  • AWS — Bedrock, Lambda, EventBridge, ECS, IAM, S3, RDS / Aurora
  • GCP — Vertex AI, Cloud Run, Pub/Sub, Firestore, BigQuery
  • Azure — OpenAI Service, Functions, AKS, Entra ID, Cosmos DB
  • Vercel — Next.js patterns, Edge Functions, Vercel AI SDK
  • Supabase — Postgres + Auth + Realtime + Storage + Edge Functions
  • Snowflake — Warehouse architecture, Native Apps, Cortex
  • Databricks — Lakehouse, Mosaic AI, Delta Live Tables
  • Stripe — Payment intents, Billing, Connect, fraud
  • Shopify — Storefront API, Hydrogen, app development
  • SAP S/4HANA — Integration patterns, BTP
  • ServiceNow — Now Platform, Flow Designer, integration patterns

The pattern is set — adding a new stack adds a folder, not a roster slot.

v2.2.0

Choose a tag to compare

@re-manish re-manish released this 29 Apr 04:19
abecd46

[2.2.0] — 2026-04-18

The install-parity and hardening release. Bundle-aware installs reach every platform (not just Claude Code's native marketplace), hook scripts get a ShellCheck-clean CI gate, and a JSON-injection bug in the plan-execution edit log is fixed.

Added

  • Bundle-aware install.sh. New flags --bundle NAME, --skills a,b,c, and --list-bundles bring Codex / Antigravity / manual installs to parity with Claude's plugin marketplace. --bundle accepts short (process-protocols) and long (etyb-process-protocols) forms. Default behaviour (no flag) is unchanged — every skill on disk is installed.
  • Bundle generator (scripts/generate-bundles.py). Reads .claude-plugin/marketplace.json and emits bundles/<plugin>.txt so install.sh stays dependency-free. --check mode is wired into CI to enforce that generated manifests never drift from the marketplace definition.
  • CI workflow (.github/workflows/ci.yml). ShellCheck across every .sh with no severity exclusions, hook regression tests, bundle drift check, and installer tests — all on every PR and push to main.
  • Regression test for the hook JSON-injection fix (tests/hooks/test-post-edit-log-json-escaping.sh). Fires post-edit-log.sh with hostile payloads and asserts the log stays well-formed.
  • Installer tests (tests/install/test-install-flags.sh). Happy paths for each new flag, all three error paths, and one real non-dry-run install to confirm bundles copy exactly the expected directories.

Fixed

  • Log injection in post-edit-log.sh. The hook previously splatted file paths, task IDs, and plan names straight into a JSON heredoc. A filename containing a quote, backslash, or newline corrupted edit-log.jsonl or let an attacker forge log entries. Fields are now JSON-escaped before write. Flagged as High Risk by Gen on skills.sh; Socket and Snyk had passed.
  • pre-commit-review-check.sh failed to parse. Two if blocks were closed with done instead of fi. With set -euo pipefail at the top the script errored on every invocation — meaning the pre-commit review reminder never fired since it shipped.
  • Silent glob shadowing in pre-edit-check.sh. Earlier glob patterns in the config-file skip list (*.config.*, *.mod, *.sum) shadowed later explicit entries (jest.config.*, vitest.config.*, go.mod, go.sum). Collapsed into a single arm that reflects real coverage.
  • Unquoted pattern expansion in post-edit-log.sh's ${FILE_PATH#$PROJECT_ROOT/} — stripping failed when the path contained glob metacharacters.
  • Version drift. .claude-plugin/marketplace.json and .claude-plugin/plugin.json had been stuck at 2.0.0 through the 2.1.0 release; skill counts said "31" in two places and "30" elsewhere. All version fields now track VERSION and all skill counts read 30.

Changed

  • Docs updated. README and docs/installation.md document the new --bundle, --skills, --list-bundles flags and list the four bundles (full, process-protocols, core-team, verticals) with skill counts.
  • install-codex-runtime.sh cleanup. Dropped an unused FORCE variable; --force effect is carried by ON_CONFLICT="replace" alone.

v2.1.0

Choose a tag to compare

@re-manish re-manish released this 29 Apr 04:17

[2.1.0] — 2026-04-16

The Codex runtime release. ETYB now ships with full OpenAI Codex runtime support — lifecycle hooks, custom agents, and per-skill metadata — upgrading Codex from model-trusted to partial runtime-enforced.

Added

  • Codex lifecycle hooks (.codex/hooks/). 4 Python hooks — UserPromptSubmit (blocks gate-skipping prompts), PreToolUse (guards merge/commit without tests), PostToolUse (captures test pass/fail signals), Stop (blocks completion claims without verification evidence).
  • Codex custom agents (.codex/agents/). 4 TOML-defined agents — explorer, planner, reviewer, docs researcher — providing Codex-native parallel dispatch.
  • Per-skill Codex metadata (agents/openai.yaml). All 30 skills now ship with interface + policy metadata for Codex skill discovery.
  • Codex runtime installer (scripts/install-codex-runtime.sh). Installs .codex/ config, hooks, and agents into any project with conflict detection and backup.
  • Codex runtime evals (skills/etyb/evals/codex-runtime-evals.json). Eval suite for verifying hook behavior on a real Codex instance.
  • Portability linter (scripts/lint-portability.sh). Cross-platform compliance checker — validates skill count, Codex metadata, plan path portability, and doc consistency.

Changed

  • Codex enforcement upgraded. Platform status changed from "model-trusted" to "partial runtime-enforced + model-trusted gaps." Edit-before-test remains model-trusted; all other gates now have hook support.
  • README overhauled. OG image banner, platform badges, dedicated platform support table, restructured install section with Codex runtime details.
  • .gitignore updated. Added .etyb/ (runtime plan artifacts) and __pycache__/ (Codex hook bytecode).

v2.0.0 — The Portability Release

Choose a tag to compare

@re-manish re-manish released this 15 Apr 18:38

[2.0.0] — 2026-04-15

The portability release. ETYB is now a cross-platform virtual engineering team with adapters for Claude Code, OpenAI Codex, and Google Antigravity. Skills are reorganized for independent use on any agentskills.io-compliant platform.

Breaking

  • orchestrator skill renamed to etyb. The folder moved from skills/orchestrator/ to skills/etyb/. Any code or prompts invoking the old name must be updated. Motivation: the skill IS the product brand — one name across marketplace, repo, invocation.
  • etyb/references/verification-protocol.mdskills/verification-protocol/. Verification is now its own peer skill. Specialists that referenced the old path have been updated; external references need to update to skills/verification-protocol/references/verification-methodology.md.
  • etyb/references/debugging-protocol.mdskills/debugging-protocol/. Same pattern as verification.
  • Total skill count: 29 → 31. Two new peer protocol skills (verification-protocol, debugging-protocol) extracted from etyb's references.

Added

  • Portable core architecture. skills/etyb/SKILL.md is now a 65-line thin entry point pointing at eight focused core modules (core/charter.md, team-registry.md, gates.md, expert-mandating.md, coordination-patterns.md, response-formats.md, scale-calibration.md, always-on-protocols.md). Core modules are platform-neutral and loadable on demand.
  • Claude Code adapter (skills/etyb/adapters/claude/) — ADAPTER.md, hooks.md, plan-mode.md, subagents.md. Deterministic hook enforcement; flagship experience.
  • OpenAI Codex adapter (skills/etyb/adapters/codex/) — ADAPTER.md, enforcement-notes.md, openai-yaml-example.md. Model-trusted gates, grounded in current Codex Agent Skills spec.
  • Google Antigravity adapter (skills/etyb/adapters/antigravity/) — ADAPTER.md, enforcement-notes.md, adk-integration.md. Model-trusted with optional ADK sub-agent elevation for parallel tracks.
  • verification-protocol skill — the Five Verification Questions, universal completion report, done criteria per gate, evidence standards. Independently installable.
  • debugging-protocol skill — root-cause-first methodology, hypothesis-driven debugging, one-variable rule, three-failure escalation. Independently installable.
  • VERSION file, manifest.json, CHANGELOG.md at repo root for versioning and update-mechanism infrastructure.

Changed

  • Bundle name/brand alignment. Plugin descriptions, marketplace configs, README, CLAUDE.md, architecture.md, and all cross-references now use "ETYB" as the brand name.
  • Frontmatter compliance. All 30 SKILL.md files validated against the agentskills.io specification — name (lowercase+hyphens, matches parent dir), description (≤1024 chars), compatibility (≤500 chars where present).
  • Specialists are standalone. Every specialist now works without etyb installed. References to etyb are supplemental cross-references, not hard dependencies. The invariant "uninstall etyb → specialists still function" holds.
  • Counts updated across docs. 31 total skills, 9 process protocols (was 7), 1 reference remaining in etyb (was 3 — two extracted as peer skills).

Migration Notes

If you had skills/orchestrator/ installed:

  1. git pull (or reinstall via your marketplace tool of choice) — the rename is a git mv so history is preserved.
  2. Update any prompts or scripts invoking orchestrator to use etyb instead.
  3. If you had custom references to skills/etyb/references/verification-protocol.md or skills/etyb/references/debugging-protocol.md, update them to skills/verification-protocol/references/verification-methodology.md and skills/debugging-protocol/references/debugging-methodology.md.