diff --git a/profiles/core/profile.yaml b/profiles/core/profile.yaml index cc58464f..25ed0860 100644 --- a/profiles/core/profile.yaml +++ b/profiles/core/profile.yaml @@ -151,6 +151,7 @@ skills: # ── Security ── - security/trivy-scan # /trivy-scan — pre-merge supply-chain gate (Trivy: dependency CVEs + secrets + IaC misconfig). Hard-blocks HIGH/CRITICAL. Invoked by code-review-deep Pass 0 + ship Step 9.0. # ── Browser ── + - browser/ego-browser # DEFAULT browser path. One JS heredoc drives a real Chromium (navigate, forms, clicks, snapshot, screenshots) instead of many MCP tool-call round trips — chosen for token cost. Reuses the user's real logins. Linux port lives in ~/Documents/ego-lite-linux (package/ego-linux). - browser/lightpanda # Lightpanda — fast headless browser for scraping, DOM dump, CDP. Pairs with lightpanda MCP. # ── Source-fetching ── - tools/opensrc # opensrc — fetch dependency source (npm/PyPI/crates/GitHub) so agents read implementations, not just types diff --git a/resources/skills b/resources/skills index e9e6657c..b8a73714 160000 --- a/resources/skills +++ b/resources/skills @@ -1 +1 @@ -Subproject commit e9e6657c3dbe9ee7ab16c3a5cb565a79c6559559 +Subproject commit b8a73714cc2e40bf7fc615fb863336e8c5bb7998 diff --git a/src/lib/profile-merge.ts b/src/lib/profile-merge.ts index ed186e73..639eaaa7 100644 --- a/src/lib/profile-merge.ts +++ b/src/lib/profile-merge.ts @@ -39,6 +39,10 @@ function skillSetTokens(ids: string[]): number { // skill discovery — they bootstrap the rest). Matched by slug suffix. const ALWAYS_KEEP_SLUGS = new Set([ "caveman-commit", "find-skills", "smart-loader", "help", + // Default browser path. A merged profile that budgets it out doesn't skip + // the browser work, it downgrades it to MCP round-trips. Mirrors + // skill-subset's ALWAYS_KEEP, which holds it through the project loadout. + "ego-browser", ]); export type OptimizeAction = "prune" | "dedupe" | "budget" | "router"; diff --git a/src/lib/skill-subset.ts b/src/lib/skill-subset.ts index 253418e8..a535b64e 100644 --- a/src/lib/skill-subset.ts +++ b/src/lib/skill-subset.ts @@ -48,6 +48,10 @@ export const ALWAYS_KEEP = new Set([ "meta/acpx", "caveman/caveman", "caveman/caveman-commit", + // The default browser path. Deferring it doesn't save a browser session — + // it sends the agent to MCP round-trips or web fetch instead, which costs + // more than this skill's frontmatter. Keep it on in every project. + "browser/ego-browser", ]); // Re-exported so callers and tests that reached for these here keep working.