setup-browser-cookies
Import cookies from your real browser (Comet, Chrome, Arc, Brave, Edge) into the headless browse session. Opens an interactive picker UI where you select which
Security score
The setup-browser-cookies skill was audited on Mar 16, 2026 and we found 17 security issues across 4 threat categories, including 2 critical. Review the findings below before installing.
Categories Tested
Security Issues
Piping content to bash shell
| 103 | 1. Tell the user: "gstack browse needs a one-time build (~10 seconds). OK to proceed?" Then STOP and wait. |
| 104 | 2. Run: `cd <SKILL_DIR> && ./setup` |
| 105 | 3. If `bun` is not installed: `curl -fsSL https://bun.sh/install | bash` |
| 106 | |
| 107 | ### 2. Open the cookie picker |
Command substitution pattern
| 17 | |
| 18 | ```bash |
| 19 | _UPD=$(~/.claude/skills/gstack/bin/gstack-update-check 2>/dev/null || .claude/skills/gstack/bin/gstack-update-check 2>/dev/null || true) |
| 20 | [ -n "$_UPD" ] && echo "$_UPD" || true |
| 21 | mkdir -p ~/.gstack/sessions |
Command substitution pattern
| 21 | mkdir -p ~/.gstack/sessions |
| 22 | touch ~/.gstack/sessions/"$PPID" |
| 23 | _SESSIONS=$(find ~/.gstack/sessions -mmin -120 -type f 2>/dev/null | wc -l | tr -d ' ') |
| 24 | find ~/.gstack/sessions -mmin +120 -type f -delete 2>/dev/null || true |
| 25 | _CONTRIB=$(~/.claude/skills/gstack/bin/gstack-config get gstack_contributor 2>/dev/null || true) |
Command substitution pattern
| 23 | _SESSIONS=$(find ~/.gstack/sessions -mmin -120 -type f 2>/dev/null | wc -l | tr -d ' ') |
| 24 | find ~/.gstack/sessions -mmin +120 -type f -delete 2>/dev/null || true |
| 25 | _CONTRIB=$(~/.claude/skills/gstack/bin/gstack-config get gstack_contributor 2>/dev/null || true) |
| 26 | ``` |
| 27 |
Command substitution pattern
| 89 | |
| 90 | ```bash |
| 91 | _ROOT=$(git rev-parse --show-toplevel 2>/dev/null) |
| 92 | B="" |
| 93 | [ -n "$_ROOT" ] && [ -x "$_ROOT/.claude/skills/gstack/browse/dist/browse" ] && B="$_ROOT/.claude/skills/gstack/browse/dist/browse" |
Curl to non-GitHub URL
| 103 | 1. Tell the user: "gstack browse needs a one-time build (~10 seconds). OK to proceed?" Then STOP and wait. |
| 104 | 2. Run: `cd <SKILL_DIR> && ./setup` |
| 105 | 3. If `bun` is not installed: `curl -fsSL https://bun.sh/install | bash` |
| 106 | |
| 107 | ### 2. Open the cookie picker |
Access to home directory dotfiles
| 17 | |
| 18 | ```bash |
| 19 | _UPD=$(~/.claude/skills/gstack/bin/gstack-update-check 2>/dev/null || .claude/skills/gstack/bin/gstack-update-check 2>/dev/null || true) |
| 20 | [ -n "$_UPD" ] && echo "$_UPD" || true |
| 21 | mkdir -p ~/.gstack/sessions |
Access to home directory dotfiles
| 19 | _UPD=$(~/.claude/skills/gstack/bin/gstack-update-check 2>/dev/null || .claude/skills/gstack/bin/gstack-update-check 2>/dev/null || true) |
| 20 | [ -n "$_UPD" ] && echo "$_UPD" || true |
| 21 | mkdir -p ~/.gstack/sessions |
| 22 | touch ~/.gstack/sessions/"$PPID" |
| 23 | _SESSIONS=$(find ~/.gstack/sessions -mmin -120 -type f 2>/dev/null | wc -l | tr -d ' ') |
Access to home directory dotfiles
| 20 | [ -n "$_UPD" ] && echo "$_UPD" || true |
| 21 | mkdir -p ~/.gstack/sessions |
| 22 | touch ~/.gstack/sessions/"$PPID" |
| 23 | _SESSIONS=$(find ~/.gstack/sessions -mmin -120 -type f 2>/dev/null | wc -l | tr -d ' ') |
| 24 | find ~/.gstack/sessions -mmin +120 -type f -delete 2>/dev/null || true |
Access to home directory dotfiles
| 21 | mkdir -p ~/.gstack/sessions |
| 22 | touch ~/.gstack/sessions/"$PPID" |
| 23 | _SESSIONS=$(find ~/.gstack/sessions -mmin -120 -type f 2>/dev/null | wc -l | tr -d ' ') |
| 24 | find ~/.gstack/sessions -mmin +120 -type f -delete 2>/dev/null || true |
| 25 | _CONTRIB=$(~/.claude/skills/gstack/bin/gstack-config get gstack_contributor 2>/dev/null || true) |
Access to home directory dotfiles
| 22 | touch ~/.gstack/sessions/"$PPID" |
| 23 | _SESSIONS=$(find ~/.gstack/sessions -mmin -120 -type f 2>/dev/null | wc -l | tr -d ' ') |
| 24 | find ~/.gstack/sessions -mmin +120 -type f -delete 2>/dev/null || true |
| 25 | _CONTRIB=$(~/.claude/skills/gstack/bin/gstack-config get gstack_contributor 2>/dev/null || true) |
| 26 | ``` |
Access to home directory dotfiles
| 23 | _SESSIONS=$(find ~/.gstack/sessions -mmin -120 -type f 2>/dev/null | wc -l | tr -d ' ') |
| 24 | find ~/.gstack/sessions -mmin +120 -type f -delete 2>/dev/null || true |
| 25 | _CONTRIB=$(~/.claude/skills/gstack/bin/gstack-config get gstack_contributor 2>/dev/null || true) |
| 26 | ``` |
| 27 |
Access to home directory dotfiles
| 26 | ``` |
| 27 | |
| 28 | If output shows `UPGRADE_AVAILABLE <old> <new>`: read `~/.claude/skills/gstack/gstack-upgrade/SKILL.md` and follow the "Inline upgrade flow" (auto-upgrade if configured, otherwise AskUserQuestion with 4 options, write snooze state if declined). If `JUST_UPGRADED <from> <to>`: tell user "Running gstack v{to} (just updated!)" and continue. |
| 29 | |
| 30 | ## AskUserQuestion Format |
Access to home directory dotfiles
| 47 | **NOT gstack issues:** user's app bugs, network errors to user's URL, auth failures on user's site. |
| 48 | |
| 49 | **To file:** write `~/.gstack/contributor-logs/{slug}.md` with this structure: |
| 50 | |
| 51 | ``` |
Access to home directory dotfiles
| 67 | ``` |
| 68 | |
| 69 | Then run: `mkdir -p ~/.gstack/contributor-logs && open ~/.gstack/contributor-logs/{slug}.md` |
| 70 | |
| 71 | Slug: lowercase, hyphens, max 60 chars (e.g. `browse-snapshot-ref-gap`). Skip if file already exists. Max 3 reports per session. File inline and continue — don't stop the workflow. Tell user: "Filed gstack field report: {title}" |
Access to home directory dotfiles
| 92 | B="" |
| 93 | [ -n "$_ROOT" ] && [ -x "$_ROOT/.claude/skills/gstack/browse/dist/browse" ] && B="$_ROOT/.claude/skills/gstack/browse/dist/browse" |
| 94 | [ -z "$B" ] && B=~/.claude/skills/gstack/browse/dist/browse |
| 95 | if [ -x "$B" ]; then |
| 96 | echo "READY: $B" |
Curl pipe to interpreter
| 103 | 1. Tell the user: "gstack browse needs a one-time build (~10 seconds). OK to proceed?" Then STOP and wait. |
| 104 | 2. Run: `cd <SKILL_DIR> && ./setup` |
| 105 | 3. If `bun` is not installed: `curl -fsSL https://bun.sh/install | bash` |
| 106 | |
| 107 | ### 2. Open the cookie picker |