[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71GP08Y5W1367F768X6DF7F":3,"skill-same:01M71GP08Y5W1367F768X6DF7F":75},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":52,"commitSha":53,"skillDirectory":54,"forksCount":55,"repositoryHtmlUrl":56,"repositoryHomepageUrl":6,"ownerHtmlUrl":57,"ownerBlogUrl":58,"ownerDescription":59,"updatedAt":60,"install":61,"resources":74},"01M71GP08Y5W1367F768X6DF7F","connect-chrome",null,"Reuse your real Chrome's logged-in cookies in the browse daemon, so authenticated pages work without re-logging-in.","timurgaleev\u002Fvibestack","timurgaleev","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F32696429?v=4","01M71GMS53Z9B4JQTCQEFXAE9E","Timur Galeev","01M71GMS5S1Q7BEYB3Z7GY3E85",8,"MIT","https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack\u002Fblob\u002Fmain\u002Fskills\u002Fconnect-chrome\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"connect","chrome","connect chrome","my","login","me","work","browser","Bash","use","pages","reuse","browser login","session","re","daemon","browse","cookies","import","as","2026-11-10 10:12:30",false,"---\nname: connect-chrome\ndescription: |\n  Reuse your real Chrome's logged-in cookies in the browse daemon, so authenticated pages work without re-logging-in.\nallowed-tools:\n  - Bash\ntriggers:\n  - connect to chrome\n  - use my chrome session\n  - reuse browser login\n  - import chrome cookies\n  - browse as me\n---\n\nIf this session was compacted, the copy of this skill in context may be cut off.\nRead `${CLAUDE_SKILL_DIR}\u002FSKILL.md` from disk and resume at the step you are on.\n\n## When to invoke\n\nUse when the browse daemon needs to act as your logged-in self — reuse the\ncookies\u002Fsessions from your real Chrome (e.g. QA-ing a page behind a login)\nwithout typing credentials into the automated browser.\n\n# \u002Fconnect-chrome — Reuse your Chrome session\n\n{{include lib\u002Fsnippets\u002Fbrowse-setup.md}}\n\nIf `BROWSE_NOT_AVAILABLE`: tell the user the browse shim is required and stop.\n\n### 1. Probe for the direct cookie import\n\n`$B` resolves to the full browse daemon when its dependencies are installed, and\nto the stateless shim otherwise. Only the full daemon can read the installed\nbrowser's cookie database directly, so probe for it with the site the user\nwants (a bare hostname, e.g. `github.com`):\n\n```bash\nB='\u003CBROWSE_BIN>'\n\"$B\" cookie-import-browser --domain '\u003Csite>'\n```\n\n- **Any other answer** (an import, or an error such as a domain mismatch or a\n  missing browser name): the full daemon is up, and this is the path — it reads\n  the installed browser's cookie store directly, no relaunch, no debugging port.\n  Do not retry the import here; the browser and profile are the user's choice.\n  Hand off to `\u002Fsetup-browser-cookies` for the picker, and stop here.\n- **It prints `NOT_SUPPORTED:cookie-import-browser`**: the stateless shim is\n  running. Continue with the CDP path below.\n\n### 2. Shim only: start Chrome with remote debugging\n\nChrome 136 and later refuse `--remote-debugging-port` on the default profile.\nThe port only opens with a separate `--user-data-dir`, and that profile starts\nempty — none of the user's logins. Say so plainly: the user must sign in once\nin that window before the import has anything to copy.\n\nAsk the user to launch Chrome with a debugging port and its own profile dir:\n\n- **macOS:** `\"\u002FApplications\u002FGoogle Chrome.app\u002FContents\u002FMacOS\u002FGoogle Chrome\" --remote-debugging-port=9222 --user-data-dir=\"$HOME\u002F.chrome-debug-profile\"`\n- **Linux:** `google-chrome --remote-debugging-port=9222 --user-data-dir=\"$HOME\u002F.chrome-debug-profile\"`\n- **Windows:** `chrome.exe --remote-debugging-port=9222 --user-data-dir=%USERPROFILE%\\chrome-debug-profile`\n\nThen have them sign in to the target site in that window. Confirm the port is\nreachable:\n\n```bash\ncurl -s http:\u002F\u002F127.0.0.1:9222\u002Fjson\u002Fversion >\u002Fdev\u002Fnull 2>&1 && echo \"CHROME_CDP_OK\" || echo \"CHROME_CDP_UNREACHABLE\"\n```\n\nIf `CHROME_CDP_UNREACHABLE`: the port differs or Chrome isn't in debug mode — ask\nthe user to confirm the launch flags and port.\n\n### 3. Shim only: start the daemon and import the cookies\n\n```bash\nB='\u003CBROWSE_BIN>'\n\"$B\" daemon >\u002Fdev\u002Fnull 2>&1 &        # persistent session (skip if already running)\nsleep 1\n\"$B\" cookies import-cdp http:\u002F\u002F127.0.0.1:9222\n```\n\n### 4. Shim only: verify\n\nNavigate to a page that requires login and confirm you're signed in:\n\n```bash\nB='\u003CBROWSE_BIN>'\n\"$B\" goto \u003Cauthenticated-url>\n\"$B\" snapshot          # look for signed-in markers (account name, logout link)\n```\n\nReport whether the session carried over. Stop the daemon with `\"$B\" daemon-stop`\nwhen done. Cookies stay in the daemon's session only — they are never written to\nthe repo or logged.\n","If this session was compacted, the copy of this skill in context may be cut off.\nRead `${CLAUDE_SKILL_DIR}\u002FSKILL.md` from disk and resume at the step you are on.\n\n## When to invoke\n\nUse when the browse daemon needs to act as your logged-in self — reuse the\ncookies\u002Fsessions from your real Chrome (e.g. QA-ing a page behind a login)\nwithout typing credentials into the automated browser.\n\n# \u002Fconnect-chrome — Reuse your Chrome session\n\n{{include lib\u002Fsnippets\u002Fbrowse-setup.md}}\n\nIf `BROWSE_NOT_AVAILABLE`: tell the user the browse shim is required and stop.\n\n### 1. Probe for the direct cookie import\n\n`$B` resolves to the full browse daemon when its dependencies are installed, and\nto the stateless shim otherwise. Only the full daemon can read the installed\nbrowser's cookie database directly, so probe for it with the site the user\nwants (a bare hostname, e.g. `github.com`):\n\n```bash\nB='\u003CBROWSE_BIN>'\n\"$B\" cookie-import-browser --domain '\u003Csite>'\n```\n\n- **Any other answer** (an import, or an error such as a domain mismatch or a\n  missing browser name): the full daemon is up, and this is the path — it reads\n  the installed browser's cookie store directly, no relaunch, no debugging port.\n  Do not retry the import here; the browser and profile are the user's choice.\n  Hand off to `\u002Fsetup-browser-cookies` for the picker, and stop here.\n- **It prints `NOT_SUPPORTED:cookie-import-browser`**: the stateless shim is\n  running. Continue with the CDP path below.\n\n### 2. Shim only: start Chrome with remote debugging\n\nChrome 136 and later refuse `--remote-debugging-port` on the default profile.\nThe port only opens with a separate `--user-data-dir`, and that profile starts\nempty — none of the user's logins. Say so plainly: the user must sign in once\nin that window before the import has anything to copy.\n\nAsk the user to launch Chrome with a debugging port and its own profile dir:\n\n- **macOS:** `\"\u002FApplications\u002FGoogle Chrome.app\u002FContents\u002FMacOS\u002FGoogle Chrome\" --remote-debugging-port=9222 --user-data-dir=\"$HOME\u002F.chrome-debug-profile\"`\n- **Linux:** `google-chrome --remote-debugging-port=9222 --user-data-dir=\"$HOME\u002F.chrome-debug-profile\"`\n- **Windows:** `chrome.exe --remote-debugging-port=9222 --user-data-dir=%USERPROFILE%\\chrome-debug-profile`\n\nThen have them sign in to the target site in that window. Confirm the port is\nreachable:\n\n```bash\ncurl -s http:\u002F\u002F127.0.0.1:9222\u002Fjson\u002Fversion >\u002Fdev\u002Fnull 2>&1 && echo \"CHROME_CDP_OK\" || echo \"CHROME_CDP_UNREACHABLE\"\n```\n\nIf `CHROME_CDP_UNREACHABLE`: the port differs or Chrome isn't in debug mode — ask\nthe user to confirm the launch flags and port.\n\n### 3. Shim only: start the daemon and import the cookies\n\n```bash\nB='\u003CBROWSE_BIN>'\n\"$B\" daemon >\u002Fdev\u002Fnull 2>&1 &        # persistent session (skip if already running)\nsleep 1\n\"$B\" cookies import-cdp http:\u002F\u002F127.0.0.1:9222\n```\n\n### 4. Shim only: verify\n\nNavigate to a page that requires login and confirm you're signed in:\n\n```bash\nB='\u003CBROWSE_BIN>'\n\"$B\" goto \u003Cauthenticated-url>\n\"$B\" snapshot          # look for signed-in markers (account name, logout link)\n```\n\nReport whether the session carried over. Stop the daemon with `\"$B\" daemon-stop`\nwhen done. Cookies stay in the daemon's session only — they are never written to\nthe repo or logged.\n",{"name":5,"triggers":44,"description":50,"allowed-tools":51},[45,46,47,48,49],"connect to chrome","use my chrome session","reuse browser login","import chrome cookies","browse as me","Reuse your real Chrome's logged-in cookies in the browse daemon, so authenticated pages work without re-logging-in.\n",[27],"main","777ec643a83c17a0955856b2eb7f596601709fda","skills\u002Fconnect-chrome",0,"https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack","https:\u002F\u002Fgithub.com\u002Ftimurgaleev","https:\u002F\u002Ftgaleev.com\u002F","Forward Deployed Engineer \u002F\r\nAWS Community Builder \u002F Cloud Architect ","2026-11-11 15:42:25",{"source":8,"skillName":5,"commands":62,"prompt":72,"zipAvailable":73},[63,66,69],{"tool":64,"command":65},"npx","npx skills add timurgaleev\u002Fvibestack --skill connect-chrome",{"tool":67,"command":68},"bunx","bunx skills add timurgaleev\u002Fvibestack --skill connect-chrome",{"tool":70,"command":71},"pnpm","pnpm dlx skills add timurgaleev\u002Fvibestack --skill connect-chrome","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack\u002Fblob\u002Fmain\u002Fskills\u002Fconnect-chrome\u002FSKILL.md",true,[],[76,82,88,94,100,106],{"skillNo":77,"name":78,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":79,"categories":80,"keywords":81,"publishedAt":39},"01M71GVHCCSQCCPVM8XPSPTA73","docs","https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Frender\u002F15-backtick-info-string\u002Fskills\u002Fdocs\u002FSKILL.md",[],[78],{"skillNo":83,"name":84,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":87,"publishedAt":39},"01M71GVFT1S5MRNM0AYRT2E6VQ","fences","https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Frender\u002F14-indented-tilde-fence\u002Fskills\u002Ffences\u002FSKILL.md",[],[84],{"skillNo":89,"name":90,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":93,"publishedAt":39},"01M71GVEYB54K1S83FGRNKN8CF","dirty","https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Frender\u002F10-check-with-drift\u002Fskills\u002Fdirty\u002FSKILL.md",[],[90],{"skillNo":95,"name":96,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":97,"categories":98,"keywords":99,"publishedAt":39},"01M71GVDX9PMND1337C4388DK4","clean","https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Frender\u002F09-check-no-drift\u002Fskills\u002Fclean\u002FSKILL.md",[],[96],{"skillNo":101,"name":102,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":103,"categories":104,"keywords":105,"publishedAt":39},"01M71GVC3VM66F1ZQT2G8JXDR0","bare","https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Frender\u002F08-no-frontmatter\u002Fskills\u002Fbare\u002FSKILL.md",[],[102],{"skillNo":107,"name":108,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":111,"publishedAt":39},"01M71GV9T8DAYZT0PX52QX0TE1","idem","https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Frender\u002F07-idempotent-rerender\u002Fskills\u002Fidem\u002FSKILL.md",[],[108]]