229 Commits
Author SHA1 Message Date
Addy Osmani d187883b7d fix(plugin): register web-performance-auditor in plugin.json agents
The .claude-plugin/plugin.json agents array still listed only 3 personas;
add web-performance-auditor so the manifest matches the agents/ directory
(now 4). Verified with `claude plugin validate .`.
0.6.2
2026-06-10 18:39:38 -07:00
Addy OsmaniandGitHub d043d0da29 Merge pull request #227 from hk1997/feat/antigravity-cli-support
feat: add native support for Antigravity CLI (agy)
2026-06-10 18:38:00 -07:00
Addy Osmani 9eae1d9cce Antigravity: drop "Recommended" badge, add /webperf command
- README: remove "(Recommended)" from the Antigravity CLI install section
  (Claude Code already carries that badge); bump the commands/ count to 8.
- Add commands/webperf.toml so Antigravity users get the /webperf
  web-performance-auditor command at parity with Claude and Gemini.
2026-06-10 18:37:22 -07:00
Addy Osmani 8cfe230b36 docs: wire up web-performance-auditor + /webperf, sync command parity
Follow-up after the #222 merge left the new persona/command only half-wired:
- Register web-performance-auditor in the README agents table, the
  getting-started "Using Agents" table, and CLAUDE.md (3 -> 4 personas).
- Document /webperf in CLAUDE.md and the getting-started command table.
- Add .gemini/commands/webperf.toml so Gemini users get /webperf too
  (mirrors the Claude command; persona invoked inline rather than spawned).
2026-06-10 18:28:43 -07:00
Addy Osmani a2bd215930 README: Add back ASCII diagram based on community request 2026-06-10 18:18:38 -07:00
Addy OsmaniandGitHub d7b1fa8fd6 Merge pull request #223 from federicobartoli/feat/observability-and-instrumentation-skill
feat: add observability-and-instrumentation skill
2026-06-10 17:05:12 -07:00
Addy OsmaniandGitHub b122c4a2c4 Merge pull request #222 from nucliweb/feat/web-performance-auditor
feat(agents): add web-performance-auditor persona and /webperf command
2026-06-10 17:01:04 -07:00
Hardik Khandelwal 37ea8f9389 fix: address review feedback on Antigravity CLI commands and docs 2026-06-11 00:10:44 +01:00
Joan Leon 267bc67ec9 fix(webperf): drop skill invoke from /webperf command opening
Addy's review on #222: leading with "Invoke the agent-skills:performance-optimization skill" risks the auditor persona drifting into fixing code instead of auditing, which breaks the reviewer-vs-implementer line. The persona already delegates to skills/performance-optimization/SKILL.md from its Rules (step 9), so nothing is lost by letting the command spawn the persona directly.
2026-06-10 22:49:38 +02:00
Hardik Khandelwal 6f46c1f3a2 feat: add native support for Antigravity CLI (agy) 2026-06-10 12:10:42 +01:00
Federico Bartoli e5e8729b16 Note OTel metrics as the vendor-neutral path, prom-client as one backend 2026-06-10 05:40:02 +00:00
Addy OsmaniandGitHub 5e262b20e0 Merge pull request #220 from addyosmani/build-improvements
feat(build): add /build auto for a one-pass plan + implement
2026-06-09 19:21:41 -07:00
Federico Bartoli 5c11d59047 Address review: rename heading, fix lifecycle placement
Rename Core Process to Process, and move observability next to
implementation in the lifecycle sequence so it no longer contradicts
the skill's own instrument-as-you-build rule.
2026-06-09 20:30:27 +00:00
Federico Bartoli 1295bd1010 feat: add observability-and-instrumentation skill
Fills the gap between debugging-and-error-recovery (dev-time) and
shipping-and-launch (launch-day monitoring): how to instrument code
as it's built so production behavior is visible and diagnosable.

Covers structured logging with correlation IDs, RED/USE metrics with
cardinality guidance, OpenTelemetry tracing, and symptom-based
alerting with runbooks. Follows the standard skill anatomy (Overview,
When to Use, Process, Rationalizations, Red Flags, Verification).

Registered in README tables/structure, CLAUDE.md phases, and the
using-agent-skills discovery tree (hooks/session-start-test.sh passes).
2026-06-09 17:56:41 +00:00
Addy OsmaniandGitHub 0427b5b128 Merge pull request #221 from nucliweb/fix/chrome-devtools-mcp-install
fix(browser-testing): correct chrome-devtools-mcp install config
2026-06-09 08:00:13 -07:00
Joan Leon d85c22076b feat(agents): add web-performance-auditor persona and /webperf command
Closes #85
2026-06-09 10:25:39 +02:00
Joan Leon fd6554afb6 fix(browser-testing): correct chrome-devtools-mcp install config
Package name was wrong (@anthropic/chrome-devtools-mcp does not exist).
Adds -y to skip npx confirmation prompt and --autoConnect as the
recommended default to connect automatically to a running Chrome instance.
2026-06-09 10:04:23 +02:00
Addy Osmani 57f527479d fix(build): establish a clean baseline before /build auto
Per federicobartoli's review on #220: the clean-rollback guarantee depended
on "one commit per task" but said nothing about pre-existing uncommitted
changes, which could get absorbed into per-task commits.

- New step: inspect `git status --porcelain` before autonomous execution;
  if there are changes outside the expected planning artifacts (SPEC.md,
  docs/SPEC.md, spec/*, tasks/plan.md, tasks/todo.md), stop and ask the user
  to commit/stash/confirm.
- Commit a generated tasks/plan.md as a single preparatory commit after
  approval so it doesn't bleed into the first task.
- Per task, stage only the files that task touched plus its status update
  (no blind `git add -A`).

No new between-task gate, so the single-checkpoint design is preserved.
Mirrored across the Claude and Gemini commands.
2026-06-07 15:33:28 -07:00
Addy OsmaniandGitHub c076972e26 Merge pull request #219 from addyosmani/security
Strengthen security skills: threat modeling, SSRF, supply chain & AI/LLM
2026-06-07 15:31:06 -07:00
Addy Osmani cad41cb506 docs(security): complete the OWASP LLM Top 10 quick-reference table
Per federicobartoli's note on #219: the table was headed "Top 10" but
listed only 8. Add the two missing entries (LLM04 Data and Model Poisoning,
LLM09 Misinformation) so the heading matches the contents.
2026-06-07 15:26:33 -07:00
Addy Osmani d1983929db fix(security): address review on #219
Per nucliweb's review:
- Resolve OWASP numbering inconsistency: rename the prevention section to
  "OWASP Top 10 Prevention Patterns" and drop the per-item numbers so it no
  longer implies a ranking that conflicts with the 2021 quick-reference table.
- Harden the SSRF example against DNS rebinding/TOCTOU: resolve all records
  and reject if any is non-unicast, plus a caveat that fetch re-resolves and
  pointers to request-filtering-agent / ssrf-req-filter for high-risk surfaces.
- Add LLM08 (Vector and Embedding Weaknesses) to the LLM section and the
  reference table, covering per-tenant embedding isolation and poisoned docs.
- Promote "Threat Model First" to a "## Process" header per the repo's skill
  anatomy convention.
- Make the LLM "GOOD" example parse defensively (JSON.parse + schema in a
  try/catch) so it models handling untrusted output end to end.
2026-06-07 11:36:31 -07:00
Addy Osmani faa69c8316 fix(build): address review on /build auto
Per review feedback on #220:
- Drop the `fast` alias (implied skipping verification); keep `auto`
  (canonical) and `all`, and state explicitly that autonomous mode is not
  faster per task — it only removes human stepping between tasks.
- Tighten spec detection to a closed set of paths (SPEC.md at root,
  docs/SPEC.md, or spec/*.md) instead of "SPEC.md (or equivalent)", so a
  stray README can't be treated as a spec.
- Define approval as an unambiguous affirmative; hedged responses are not
  approval.
- Add resume contract: re-invoke /build auto to pick up the next task.
- Add a high-risk catch-all: anything you can't undo with `git revert`.
- Add dependency fallback: execute in declared plan order when deps aren't
  explicit.

Mirrored across the Claude and Gemini commands.
2026-06-06 14:42:34 -07:00
Addy Osmani 3af91501b2 feat(build): add /build auto for one-pass plan + implement
Adds an autonomous mode to the build command: once a spec exists,
`/build auto` (also `all`/`fast`) generates the plan if missing, takes a
single plan approval, then implements every task in dependency order with
full TDD and a commit per task.

Removes the manual stepping between tasks without removing verification —
each task still earns a passing test and its own commit, so any point is a
clean rollback. Auto-pauses for human input on failures, spec ambiguity,
or high-risk/irreversible tasks (auth, destructive migrations, payments,
deletes, deploys, secrets).

- .claude/commands/build.md: two-mode definition (default vs auto)
- .gemini/commands/build.toml: mirrored for Gemini CLI
- README.md, docs/getting-started.md: document the new mode
2026-06-06 10:29:46 -07:00
Addy Osmani e1343ce71f feat(security-auditor): add AI/LLM review scope and threat-model framing
- New "AI / LLM Features" review scope mapped to the OWASP LLM Top 10
- SSRF question added to third-party integrations
- Rules updated to start from trust boundaries (STRIDE) and to check the
  LLM Top 10 and supply-chain risk
2026-06-05 21:57:15 -07:00
Addy Osmani b7add8c945 docs(security): mirror new coverage into the security checklist
- Threat Modeling "start here" block (trust boundaries, STRIDE, abuse cases)
- SSRF line under Input Validation
- Supply-chain hygiene items under Dependency Security
- AI / LLM Security section + OWASP Top 10 for LLMs quick reference table
2026-06-05 21:57:15 -07:00
Addy Osmani db7015d261 feat(security): add threat modeling, SSRF, supply-chain, and LLM security
Strengthen the security-and-hardening skill with the highest-value gaps
without changing its secure-coding-for-builders scope:

- Threat Model First: a STRIDE/trust-boundary process step up front, so the
  skill drives proactive design (OWASP A04) instead of only listing controls
- SSRF prevention (§7): allowlist + private-IP-block pattern; the one OWASP
  Top 10 item previously listed but never exemplified
- Supply-chain hygiene: lockfile/npm ci, postinstall and typosquat risks (A06)
- Securing AI/LLM features: prompt injection, untrusted model output, secrets
  in prompts, excessive agency, unbounded consumption (OWASP LLM Top 10 2025)
- Secret-leak response: rotate, don't just rewrite history
- Threaded the new areas into the review checklist, rationalizations,
  red flags, and verification

Skill grows 349 -> 448 lines (+28%). Validator passes.
2026-06-05 21:57:15 -07:00
Addy OsmaniandGitHub 2e0dfbfb43 Merge pull request #215 from addyosmani/addyosmani/fix-marketplace-schema
fix: update marketplace.json to use explicit GitHub source format
2026-06-05 18:00:13 -07:00
Addy OsmaniandCopilot 77ffedb28c fix: update marketplace.json to use explicit GitHub source format
Replace relative path source ("./") with the canonical GitHub source
object format ({ "source": "github", "repo": "owner/repo" }).

This resolves schema validation errors seen in Claude CLI v2.1.156+
where the relative path format caused 'Invalid input' errors in
strict marketplace JSON validators.

Also adds:
- $schema reference for editor autocomplete and validation
- top-level description field (was nested under metadata)
- owner URL, homepage, license, and keywords fields

Closes #212

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-06-02 09:15:47 -07:00
Addy OsmaniandGitHub 6ce029897d Merge pull request #186 from superShen0916/fix/meta-skill-routing
docs: route all lifecycle skills from meta-skill
2026-05-27 23:47:30 -07:00
Addy OsmaniandGitHub 2a62238edd Merge pull request #183 from creazyfrog/docs/fix-copilot-agent-file-naming
docs(copilot): fix agent file naming — use *.agent.md extension
2026-05-24 14:03:14 -07:00
Addy OsmaniandGitHub 63a4e1188a Merge pull request #163 from git-clone-abhinav/fix/marketplace-source-relative-path
fix(marketplace): use relative path source to bypass install bug
2026-05-24 13:58:20 -07:00
Addy OsmaniandGitHub 250ffaa6e8 Merge pull request #189 from felixlogotel/fix/drop-pinning-version-field
fix(#145): drop pinning version field from plugin.json
0.6.1
2026-05-22 21:39:34 -07:00
Addy OsmaniandGitHub 539a785747 Merge pull request #187 from danielart/feat/interview-me-confidence-reason
feat(interview-me): add reason to low-confidence numbers
2026-05-21 23:04:13 -07:00
felixlogotelandClaude Opus 4.7 f3f8ed8352 fix(#145): drop pinning version field from plugin.json
The hard-coded `"version": "1.0.0"` in .claude-plugin/plugin.json
pins every install at the snapshot taken when that string was first
set. Per the Claude Code marketplace docs:

> Setting `version` pins the plugin. If `plugin.json` declares
> `"version": "1.0.0"`, pushing new commits without changing that
> string does nothing for existing users, because Claude Code sees
> the same version and keeps the cached copy. Bump the field on
> every release, or omit it to use the commit SHA.
> https://code.claude.com/docs/en/plugin-marketplaces#version-resolution-and-release-channels

Two consequences observed in practice:

1. Users who ran `/plugin install agent-skills@addy-agent-skills`
   weeks ago do not receive the 37 commits landed on main since
   the 0.6.0 release (including the new `doubt-driven-development`
   and `interview-me` skills, plus several frontmatter and
   cross-reference fixes). `claude plugin update` reports no
   change because the cached and remote `version` strings match.
2. The release tags `0.5.0` and `0.6.0` have shipped with no
   corresponding bump in `plugin.json`, so the existing release
   cadence already does not feed Claude Code's update mechanism.

Dropping the `version` field switches the plugin to commit-SHA
versioning, which the same docs explicitly recommend:

> If you omit `version` and host this marketplace in git, every
> commit automatically counts as a new version. This is the
> simplest setup for internal or actively-developed plugins.

Given the repo's commit cadence (37 commits / ~3 weeks between
0.6.0 and HEAD) and its content profile (mostly markdown SKILL.md
files with low per-commit breakage risk), commit-SHA versioning
fits this project better than manual semver bumps. Git tags and
GitHub Releases remain available as editorial milestones for
changelog and announcements; they just no longer need to drive
the update mechanism.

Closes #145.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-21 14:08:12 +02:00
Daniel ARTOLAandClaude Sonnet 4.6 c4ad44928c feat(interview-me): add reason to low-confidence numbers
A bare confidence percentage gives no signal about what's blocking clarity.
When confidence is below ~70%, the skill now requires a one-line reason on
the same CONFIDENCE line so the user knows exactly what the interview still
needs to surface.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-20 20:39:35 +02:00
superShen0916 6c0e9103ee docs: route all lifecycle skills from meta-skill
Signed-off-by: superShen0916 <superShen0916@users.noreply.github.com>
2026-05-20 10:50:34 +08:00
Trivenzaa-AdminandClaude Sonnet 4.6 9cd2ce16e7 docs(copilot): fix agent file naming — use *.agent.md extension
GitHub Copilot requires custom agent files to be named *.agent.md.
The previous instructions copied them as *.md, which Copilot silently
ignores, so agents would never be available in Copilot Chat.

Changes:
- Rename all three cp commands to use the .agent.md suffix
- Add mkdir -p .github/agents (was missing, cp would have failed)
- Add a callout block explaining the naming requirement with a link
  to the VS Code custom agents docs
- Update section heading from "(agents.md)" to "(*.agent.md)"

Fixes #179

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-19 01:35:58 -07:00
Addy OsmaniandGitHub f17c6e88c9 Merge pull request #60 from googlarz/feat/ci-skill-validator
Add CI skill validator
2026-05-16 15:00:25 -07:00
Addy Osmani 5b4c6dade5 Drop ASCII diagram from README 2026-05-13 21:52:06 -07:00
Addy Osmani f7edc6c4c8 Add visual to README 2026-05-13 21:50:55 -07:00
Addy OsmaniandGitHub b116253918 Merge pull request #164 from addyosmani/feat/interview-me-skill
feat: add interview-me skill (during the Define phase)
2026-05-13 21:48:35 -07:00
Addy Osmani 12ae36e0d5 interview-me: address review feedback
- Disambiguate the using-agent-skills flowchart so interview-me and
  idea-refine no longer match the same condition top-to-bottom
  ("Don't know what you want yet?" vs "Have a rough concept, need
  variants?").
- Add "grill me" to interview-me's frontmatter description and the
  When to Use trigger list (it was already mentioned in README).
- Reorder sections: Example and Interaction with Other Skills now
  precede Common Rationalizations and Red Flags, so the persuasive
  example lands before the rationalization table.

Per review by @nucliweb on #164.
2026-05-13 21:47:29 -07:00
Addy OsmaniandGitHub 3b209f4c01 Merge pull request #167 from toby-bridges/fix/issue-75-docs-inconsistency-conflicting-skill-des
fix(#75): Docs inconsistency: conflicting skill description and anatomy guidance
2026-05-13 21:34:52 -07:00
Addy Osmani 6175fdd678 Merge branch 'main' into fix/issue-75-docs-inconsistency-conflicting-skill-des
Resolves conflict in AGENTS.md introduced by #170 (empty scripts/
directory cleanup). Combines #170's '## Usage (Optional)' + scripts/
explanation with this PR's equivalent-headings note.
2026-05-13 21:33:50 -07:00
Addy OsmaniandGitHub 9d8a88812a Merge pull request #170 from toby-bridges/fix/issue-135-empty-scripts-directories-create-inconsi
docs: clarify when skills should include scripts/
2026-05-13 21:30:54 -07:00
Addy OsmaniandGitHub 3cbb832341 Merge pull request #174 from spboyer/improve/skill-frontmatter-compliance
docs(skills): tighten frontmatter for idea-refine and browser-testing-with-devtools
2026-05-13 21:29:09 -07:00
Addy OsmaniandGitHub 3ef830ba83 Merge pull request #169 from 245678000000/codex/fix-cross-skill-paths
fix(spec-driven-development): add explicit cross-skill paths
2026-05-13 21:28:23 -07:00
Shayne BoyerandCopilot 4d277aa72e docs(skills): tighten frontmatter for idea-refine and browser-testing
idea-refine: rewrite the description to follow the repository's
documented "Use when..." trigger convention (AGENTS.md). The previous
description was 135 characters, redundant, and used the skill name
itself as the only trigger phrase, making it the only skill not aligned
with how the other 21 skills self-describe.

browser-testing-with-devtools: surface the Chrome DevTools MCP
dependency at the top of the description and explicitly note the
requirement, so agents that route by MCP availability can detect it
without parsing the body.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-12 16:55:56 -04:00
li9292 de37fc6d3b chore: remove automation scratch files from PR 2026-05-12 11:53:55 +08:00
li9292 df5466380f chore(#135): Empty scripts/ directories create inconsistency
Fixes #135

Ref: https://github.com/addyosmani/agent-skills/issues/135
2026-05-12 11:51:08 +08:00