bama
BAMA: Build Any Mac App. Agent skills to research, clone, design, build, optimize, and test native macOS apps with Swift and SwiftUI.
翻译准备中
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Skills for Claude Code that stop your agent from breaking production: post-deploy smoke, prove it's live, safe git across sessions, secret guard, permission unblock.
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗Skills for Claude Code that stop your agent from breaking production.
Your agent writes the code, pushes it, and says "deployed, all good". deploysmoke makes it prove that: in a real browser, on the live URL, against the commit that is actually being served, without a secret in the diff and without trampling the session next door.
Five free skills, MIT licensed. Each one ships a small, dependency-light script and a test that proves it catches the failure it exists for.
| Skill | Catches |
|---|---|
| post-deploy-smoke | Opens every changed page on the live URL in clean Chromium (1440) and WebKit/Safari (390). Fails on any 4xx/5xx asset, JS errors, images that loaded but never decoded or sit at opacity: 0, reveal-on-scroll content that never revealed, buttons cut off at the phone edge, sideways scroll. |
| prove-its-live | Never "it's live" without evidence. Reads the commit production actually serves (Vercel API via your CLI login, a /version endpoint, or any platform's SHA) and compares it with what you pushed: match, behind, ahead, diverged, or unverifiable. Flags newer deploys that failed. Can move a production git tag. |
| multi-session-git | Parallel sessions in one repo. Checks the real branch before every commit, sends you to your own worktree instead of checkout, stages explicit files only, and verifies on the server that your commit landed after every push. |
| secret-guard | Offline scan of the staged diff, a push range, files or command output for AWS, Stripe live, GitHub, OpenAI, Anthropic, Slack, Google and npm keys, private keys, URLs with passwords, .env files and high-entropy secret assignments. Findings are always masked. Optional pre-commit hook. |
| permission-unblock | When a tool call is refused, names the gate (missing allow rule, your own "no", a deny rule, a hook, or the auto-mode classifier) and prints the narrowest rule for the project's .claude/settings.json, in the current permission syntax. Or tells you why no rule should be added. |
As a Claude Code plugin (all five skills, updates through the marketplace):
/plugin marketplace add roych28/deploysmoke
/plugin install deploysmoke@deploysmoke
Skills then appear as /deploysmoke:post-deploy-smoke, /deploysmoke:prove-its-live, and so on, and Claude
uses them on its own when the situation matches.
With the skills CLI (skills.sh, works with Claude Code and other agents):
npx skills add roych28/deploysmoke
Browsers for the smoke test (once per machine, in the project you check or anywhere):
npm install --save-dev playwright
npx playwright install chromium webkit
The other four skills need only Node 18+ and git. If Playwright is missing, the smoke test exits with a clear message instead of pretending it passed.
Every skill here comes from a production incident that a green build did not catch:
git push origin main printed success and pushed nothing, and the agent reported
"live in production".opacity: 0. curl was happy. Users saw a blank page.git add -A swept a .env into a public repo. Deleting it in the next commit
does not un-leak it.The rule behind all of them: pushed is not deployed, deployed is not live, and 200 from the server is not "the image is visible".
examples/broken-site plants five bugs (a 404 image, a JS error, an image that returns 200 but does not
decode, a reveal block that never reveals, a CTA cut off at 390px). examples/fixed-site is the fixed copy.
git clone https://github.com/roych28/deploysmoke && cd deploysmoke
npm install && npx playwright install chromium webkit
npx serve examples -l 5173
node skills/post-deploy-smoke/smoke.mjs http://localhost:5173/broken-site/
node skills/post-deploy-smoke/smoke.mjs http://localhost:5173/fixed-site/
npm test
.claude-plugin/marketplace.json marketplace "deploysmoke" with one plugin at the repo root
.claude-plugin/plugin.json plugin manifest
skills/<name>/SKILL.md one folder per skill, with its script next to it
examples/ broken-site and fixed-site fixtures
test/ node:test suites for every skill (npm test)
The free skills catch the failures. deploysmoke Pro stops them from shipping at all:
MIT, see LICENSE. Built for Claude Code. Not affiliated with or endorsed by Anthropic.