@seybel/breakhound 1.0.1 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -3
- package/dist/cli.js +21 -6
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -45,7 +45,13 @@ In your project folder:
|
|
|
45
45
|
npx @seybel/breakhound
|
|
46
46
|
```
|
|
47
47
|
|
|
48
|
-
That's it: no config.
|
|
48
|
+
That's it: no config. npx runs it without installing anything. To type `breakhound` directly instead, install it globally:
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
npm i -g @seybel/breakhound
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Or add it to your project with `npm i -D @seybel/breakhound`, so everyone gets the same version, and run it as `npx breakhound` or from an npm script.
|
|
49
55
|
|
|
50
56
|
If your dev server is already running it's used, otherwise breakhound starts it with your `dev` script and stops it when done. Chromium is downloaded automatically the first time (about 150 MB).
|
|
51
57
|
|
|
@@ -175,7 +181,7 @@ breakhound doesn't edit your code: your own agent does, and breakhound checks it
|
|
|
175
181
|
npx @seybel/breakhound mcp install
|
|
176
182
|
```
|
|
177
183
|
|
|
178
|
-
It finds Claude Code, Cursor, VS Code, Windsurf and Codex, shows what it will add to their MCP settings, and asks first. Then ask your agent to fix the responsive issues. It can:
|
|
184
|
+
It finds Claude Code, Cursor, VS Code, Antigravity, Windsurf and Codex, shows what it will add to their MCP settings, and asks first. Then ask your agent to fix the responsive issues. It can:
|
|
179
185
|
|
|
180
186
|
| Tool | What it does |
|
|
181
187
|
|---|---|
|
|
@@ -312,7 +318,7 @@ You can also mark elements in your markup:
|
|
|
312
318
|
|
|
313
319
|
## CLI
|
|
314
320
|
|
|
315
|
-
Run these with `npx @seybel/breakhound`, or as `breakhound`
|
|
321
|
+
Run these with `npx @seybel/breakhound`, or as `breakhound` after `npm i -g @seybel/breakhound`. Installed in a project, it's `npx breakhound` or an npm script.
|
|
316
322
|
|
|
317
323
|
```
|
|
318
324
|
breakhound Find your app and scan every route
|
package/dist/cli.js
CHANGED
|
@@ -4707,7 +4707,9 @@ var SETUP = `breakhound fix needs a model to write the fixes. Use one of:
|
|
|
4707
4707
|
ANTHROPIC_API_KEY=... (your Anthropic key; uses ${DEFAULT_ANTHROPIC_MODEL} unless you pass --model)
|
|
4708
4708
|
OPENAI_API_KEY=... with --model <name> (OpenAI, or any compatible API via OPENAI_BASE_URL)
|
|
4709
4709
|
Ollama running locally, free: https://ollama.com, then for example: ollama pull qwen2.5-coder
|
|
4710
|
-
|
|
4710
|
+
Using a coding agent (Claude Code, Cursor, Antigravity...)? It doesn't need a model here: run
|
|
4711
|
+
npx @seybel/breakhound mcp install once, then ask your agent to fix the breakhound issues.
|
|
4712
|
+
Or paste npx @seybel/breakhound prompt --copy into any agent.`;
|
|
4711
4713
|
async function resolveModel(options = {}) {
|
|
4712
4714
|
const env = options.env ?? process.env;
|
|
4713
4715
|
const timeoutMs = options.timeoutMs ?? 3e5;
|
|
@@ -6862,6 +6864,17 @@ function allClients(cwd, home = homedir()) {
|
|
|
6862
6864
|
// biome-ignore lint/suspicious/noTemplateCurlyInString: VS Code variable.
|
|
6863
6865
|
cwd: "${workspaceFolder}"
|
|
6864
6866
|
}),
|
|
6867
|
+
// Antigravity's workspace config; its global one is ~/.gemini/config/mcp_config.json.
|
|
6868
|
+
jsonClient(
|
|
6869
|
+
"antigravity",
|
|
6870
|
+
"Antigravity",
|
|
6871
|
+
join17(cwd, ".agents", "mcp_config.json"),
|
|
6872
|
+
"mcpServers",
|
|
6873
|
+
{
|
|
6874
|
+
command,
|
|
6875
|
+
args
|
|
6876
|
+
}
|
|
6877
|
+
),
|
|
6865
6878
|
jsonClient(
|
|
6866
6879
|
"windsurf",
|
|
6867
6880
|
"Windsurf",
|
|
@@ -6877,6 +6890,7 @@ function detectClients(cwd, home = homedir()) {
|
|
|
6877
6890
|
claude: existsSync15(join17(cwd, ".mcp.json")) || existsSync15(join17(cwd, ".claude")) || existsSync15(join17(cwd, "CLAUDE.md")) || existsSync15(join17(home, ".claude")) || onPath("claude"),
|
|
6878
6891
|
cursor: existsSync15(join17(cwd, ".cursor")) || existsSync15(join17(home, ".cursor")),
|
|
6879
6892
|
vscode: existsSync15(join17(cwd, ".vscode")) || onPath("code"),
|
|
6893
|
+
antigravity: existsSync15(join17(cwd, ".agents", "mcp_config.json")) || existsSync15(join17(home, ".gemini", "config", "mcp_config.json")) || existsSync15(join17(home, ".gemini", "antigravity")) || onPath("antigravity"),
|
|
6880
6894
|
windsurf: existsSync15(join17(home, ".codeium", "windsurf")),
|
|
6881
6895
|
codex: existsSync15(join17(home, ".codex"))
|
|
6882
6896
|
};
|
|
@@ -6891,7 +6905,7 @@ async function installMcp(cwd, options = {}) {
|
|
|
6891
6905
|
const clients = options.clients?.length ? allClients(cwd, home).filter((c) => options.clients?.includes(c.id)) : detectClients(cwd, home);
|
|
6892
6906
|
if (!clients.length) {
|
|
6893
6907
|
console.log(
|
|
6894
|
-
"No coding agent found here. Pick one with --client claude, cursor, vscode, windsurf or codex, or add this to your agent's MCP settings:"
|
|
6908
|
+
"No coding agent found here. Pick one with --client claude, cursor, vscode, antigravity, windsurf or codex, or add this to your agent's MCP settings:"
|
|
6895
6909
|
);
|
|
6896
6910
|
console.log(JSON.stringify({ [SERVER_NAME]: serverCommand() }, null, 2));
|
|
6897
6911
|
return 1;
|
|
@@ -6974,7 +6988,7 @@ function readVersion() {
|
|
|
6974
6988
|
var VERSION2 = readVersion();
|
|
6975
6989
|
var HELP = `breakhound ${VERSION2}
|
|
6976
6990
|
Find where your layout breaks across every viewport width.
|
|
6977
|
-
Run it with npx @seybel/breakhound, or as breakhound
|
|
6991
|
+
Run it with npx @seybel/breakhound, or as breakhound after npm i -g @seybel/breakhound.
|
|
6978
6992
|
|
|
6979
6993
|
Usage
|
|
6980
6994
|
breakhound Find your app and scan every route
|
|
@@ -6992,7 +7006,8 @@ Fixing
|
|
|
6992
7006
|
breakhound undo [routes] Revert the fixes for these routes (--session for all); lists them with no routes
|
|
6993
7007
|
breakhound fix [routes] Fix the last scan's issues with your own model (Anthropic or OpenAI key, or
|
|
6994
7008
|
a local Ollama), verify each fix and commit it so it can be undone
|
|
6995
|
-
breakhound mcp install Add breakhound's MCP server to Claude Code, Cursor, VS Code,
|
|
7009
|
+
breakhound mcp install Add breakhound's MCP server to Claude Code, Cursor, VS Code, Antigravity,
|
|
7010
|
+
Windsurf or Codex
|
|
6996
7011
|
breakhound mcp Run the MCP server (your agent starts it)
|
|
6997
7012
|
|
|
6998
7013
|
Scan options
|
|
@@ -7030,7 +7045,7 @@ Fix options
|
|
|
7030
7045
|
--all Include info-level issues
|
|
7031
7046
|
|
|
7032
7047
|
MCP install options
|
|
7033
|
-
--client <name> claude, cursor, vscode, windsurf or codex (repeatable)
|
|
7048
|
+
--client <name> claude, cursor, vscode, antigravity, windsurf or codex (repeatable)
|
|
7034
7049
|
-y, --yes Don't ask before changing files
|
|
7035
7050
|
|
|
7036
7051
|
-h, --help Show this help
|
|
@@ -7120,7 +7135,7 @@ async function main(argv) {
|
|
|
7120
7135
|
if (command === "mcp") {
|
|
7121
7136
|
if (rest2[0] === "install") {
|
|
7122
7137
|
const clients = values.client ?? [];
|
|
7123
|
-
const known = ["claude", "cursor", "vscode", "windsurf", "codex"];
|
|
7138
|
+
const known = ["claude", "cursor", "vscode", "antigravity", "windsurf", "codex"];
|
|
7124
7139
|
const unknown = clients.filter((c) => !known.includes(c));
|
|
7125
7140
|
if (unknown.length)
|
|
7126
7141
|
throw new Error(`Unknown --client ${unknown.join(", ")}. Use one of: ${known.join(", ")}`);
|