[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71FCFRX139CWSFVMAJEVKRC":3,"skill-same:01M71FCFRX139CWSFVMAJEVKRC":76},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":22,"publishedAt":43,"linkOnly":44,"markdownContent":45,"markdownBody":46,"frontMatter":47,"refName":56,"commitSha":57,"skillDirectory":58,"forksCount":13,"repositoryHtmlUrl":59,"repositoryHomepageUrl":6,"ownerHtmlUrl":60,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":61,"install":62,"resources":75},"01M71FCFRX139CWSFVMAJEVKRC","jupyter-live-kernel",null,"Use a live Jupyter kernel for stateful, iterative Python execution via hamelnb. Load this skill when the task involves exploration, iteration, or inspecting intermediate results — data science, ML experimentation, API exploration, or building up complex code step-by-step. Uses terminal to run CLI commands against a live Jupyter kernel. No new tools required.","gjbvsjjvgm-sketch\u002Fhermes-sovereign-unified-v13.6","gjbvsjjvgm-sketch","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F278511911?v=4","01M71F3JXKZQ70H2KCHHTXKZDA","01M71F3JY8A79Z3NZBW08TF4JD",0,"MIT","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002Fhermes-sovereign-unified-v13.6\u002Fblob\u002Fmain\u002F.yousef\u002Fskills\u002Fdata-science\u002Fjupyter-live-kernel\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42],"kernel","live","jupyter","jupyter live kernel","run cli","new","when","stateful","data-science","iteration","commands","exploration","notebook","cli","up","api","data","code","run","terminal","2026-11-10 10:12:30",false,"---\nname: jupyter-live-kernel\ndescription: >\n  Use a live Jupyter kernel for stateful, iterative Python execution via hamelnb.\n  Load this skill when the task involves exploration, iteration, or inspecting\n  intermediate results — data science, ML experimentation, API exploration, or\n  building up complex code step-by-step. Uses terminal to run CLI commands against\n  a live Jupyter kernel. No new tools required.\nversion: 1.0.0\nauthor: YOUSEF SHTIWE\nlicense: MIT\nmetadata:\n  hermes:\n    tags: [jupyter, notebook, repl, data-science, exploration, iterative]\n    category: data-science\n---\n\n# Jupyter Live Kernel (hamelnb)\n\nGives you a **stateful Python REPL** via a live Jupyter kernel. Variables persist\nacross executions. Use this instead of `execute_code` when you need to build up\nstate incrementally, explore APIs, inspect DataFrames, or iterate on complex code.\n\n## When to Use This vs Other Tools\n\n| Tool | Use When |\n|------|----------|\n| **This skill** | Iterative exploration, state across steps, data science, ML, \"let me try this and check\" |\n| `execute_code` | One-shot scripts needing hermes tool access (web_search, file ops). Stateless. |\n| `terminal` | Shell commands, builds, installs, git, process management |\n\n**Rule of thumb:** If you'd want a Jupyter notebook for the task, use this skill.\n\n## Prerequisites\n\n1. **uv** must be installed (check: `which uv`)\n2. **JupyterLab** must be installed: `uv tool install jupyterlab`\n3. A Jupyter server must be running (see Setup below)\n\n## Setup\n\nThe hamelnb script location:\n```\nSCRIPT=\"$HOME\u002F.agent-skills\u002Fhamelnb\u002Fskills\u002Fjupyter-live-kernel\u002Fscripts\u002Fjupyter_live_kernel.py\"\n```\n\nIf not cloned yet:\n```\ngit clone https:\u002F\u002Fgithub.com\u002Fhamelsmu\u002Fhamelnb.git ~\u002F.agent-skills\u002Fhamelnb\n```\n\n### Starting JupyterLab\n\nCheck if a server is already running:\n```\nuv run \"$SCRIPT\" servers\n```\n\nIf no servers found, start one:\n```\njupyter-lab --no-browser --port=8888 --notebook-dir=$HOME\u002Fnotebooks \\\n  --IdentityProvider.token='' --ServerApp.password='' > \u002Ftmp\u002Fjupyter.log 2>&1 &\nsleep 3\n```\n\nNote: Token\u002Fpassword disabled for local agent access. The server runs headless.\n\n### Creating a Notebook for REPL Use\n\nIf you just need a REPL (no existing notebook), create a minimal notebook file:\n```\nmkdir -p ~\u002Fnotebooks\n```\nWrite a minimal .ipynb JSON file with one empty code cell, then start a kernel\nsession via the Jupyter REST API:\n```\ncurl -s -X POST http:\u002F\u002F127.0.0.1:8888\u002Fapi\u002Fsessions \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"path\":\"scratch.ipynb\",\"type\":\"notebook\",\"name\":\"scratch.ipynb\",\"kernel\":{\"name\":\"python3\"}}'\n```\n\n## Core Workflow\n\nAll commands return structured JSON. Always use `--compact` to save tokens.\n\n### 1. Discover servers and notebooks\n\n```\nuv run \"$SCRIPT\" servers --compact\nuv run \"$SCRIPT\" notebooks --compact\n```\n\n### 2. Execute code (primary operation)\n\n```\nuv run \"$SCRIPT\" execute --path \u003Cnotebook.ipynb> --code '\u003Cpython code>' --compact\n```\n\nState persists across execute calls. Variables, imports, objects all survive.\n\nMulti-line code works with $'...' quoting:\n```\nuv run \"$SCRIPT\" execute --path scratch.ipynb --code $'import os\\nfiles = os.listdir(\".\")\\nprint(f\"Found {len(files)} files\")' --compact\n```\n\n### 3. Inspect live variables\n\n```\nuv run \"$SCRIPT\" variables --path \u003Cnotebook.ipynb> list --compact\nuv run \"$SCRIPT\" variables --path \u003Cnotebook.ipynb> preview --name \u003Cvarname> --compact\n```\n\n### 4. Edit notebook cells\n\n```\n# View current cells\nuv run \"$SCRIPT\" contents --path \u003Cnotebook.ipynb> --compact\n\n# Insert a new cell\nuv run \"$SCRIPT\" edit --path \u003Cnotebook.ipynb> insert \\\n  --at-index \u003CN> --cell-type code --source '\u003Ccode>' --compact\n\n# Replace cell source (use cell-id from contents output)\nuv run \"$SCRIPT\" edit --path \u003Cnotebook.ipynb> replace-source \\\n  --cell-id \u003Cid> --source '\u003Cnew code>' --compact\n\n# Delete a cell\nuv run \"$SCRIPT\" edit --path \u003Cnotebook.ipynb> delete --cell-id \u003Cid> --compact\n```\n\n### 5. Verification (restart + run all)\n\nOnly use when the user asks for a clean verification or you need to confirm\nthe notebook runs top-to-bottom:\n\n```\nuv run \"$SCRIPT\" restart-run-all --path \u003Cnotebook.ipynb> --save-outputs --compact\n```\n\n## Practical Tips from Experience\n\n1. **First execution after server start may timeout** — the kernel needs a moment\n   to initialize. If you get a timeout, just retry.\n\n2. **The kernel Python is JupyterLab's Python** — packages must be installed in\n   that environment. If you need additional packages, install them into the\n   JupyterLab tool environment first.\n\n3. **--compact flag saves significant tokens** — always use it. JSON output can\n   be very verbose without it.\n\n4. **For pure REPL use**, create a scratch.ipynb and don't bother with cell editing.\n   Just use `execute` repeatedly.\n\n5. **Argument order matters** — subcommand flags like `--path` go BEFORE the\n   sub-subcommand. E.g.: `variables --path nb.ipynb list` not `variables list --path nb.ipynb`.\n\n6. **If a session doesn't exist yet**, you need to start one via the REST API\n   (see Setup section). The tool can't execute without a live kernel session.\n\n7. **Errors are returned as JSON** with traceback — read the `ename` and `evalue`\n   fields to understand what went wrong.\n\n8. **Occasional websocket timeouts** — some operations may timeout on first try,\n   especially after a kernel restart. Retry once before escalating.\n\n## Timeout Defaults\n\nThe script has a 30-second default timeout per execution. For long-running\noperations, pass `--timeout 120`. Use generous timeouts (60+) for initial\nsetup or heavy computation.\n","# Jupyter Live Kernel (hamelnb)\n\nGives you a **stateful Python REPL** via a live Jupyter kernel. Variables persist\nacross executions. Use this instead of `execute_code` when you need to build up\nstate incrementally, explore APIs, inspect DataFrames, or iterate on complex code.\n\n## When to Use This vs Other Tools\n\n| Tool | Use When |\n|------|----------|\n| **This skill** | Iterative exploration, state across steps, data science, ML, \"let me try this and check\" |\n| `execute_code` | One-shot scripts needing hermes tool access (web_search, file ops). Stateless. |\n| `terminal` | Shell commands, builds, installs, git, process management |\n\n**Rule of thumb:** If you'd want a Jupyter notebook for the task, use this skill.\n\n## Prerequisites\n\n1. **uv** must be installed (check: `which uv`)\n2. **JupyterLab** must be installed: `uv tool install jupyterlab`\n3. A Jupyter server must be running (see Setup below)\n\n## Setup\n\nThe hamelnb script location:\n```\nSCRIPT=\"$HOME\u002F.agent-skills\u002Fhamelnb\u002Fskills\u002Fjupyter-live-kernel\u002Fscripts\u002Fjupyter_live_kernel.py\"\n```\n\nIf not cloned yet:\n```\ngit clone https:\u002F\u002Fgithub.com\u002Fhamelsmu\u002Fhamelnb.git ~\u002F.agent-skills\u002Fhamelnb\n```\n\n### Starting JupyterLab\n\nCheck if a server is already running:\n```\nuv run \"$SCRIPT\" servers\n```\n\nIf no servers found, start one:\n```\njupyter-lab --no-browser --port=8888 --notebook-dir=$HOME\u002Fnotebooks \\\n  --IdentityProvider.token='' --ServerApp.password='' > \u002Ftmp\u002Fjupyter.log 2>&1 &\nsleep 3\n```\n\nNote: Token\u002Fpassword disabled for local agent access. The server runs headless.\n\n### Creating a Notebook for REPL Use\n\nIf you just need a REPL (no existing notebook), create a minimal notebook file:\n```\nmkdir -p ~\u002Fnotebooks\n```\nWrite a minimal .ipynb JSON file with one empty code cell, then start a kernel\nsession via the Jupyter REST API:\n```\ncurl -s -X POST http:\u002F\u002F127.0.0.1:8888\u002Fapi\u002Fsessions \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"path\":\"scratch.ipynb\",\"type\":\"notebook\",\"name\":\"scratch.ipynb\",\"kernel\":{\"name\":\"python3\"}}'\n```\n\n## Core Workflow\n\nAll commands return structured JSON. Always use `--compact` to save tokens.\n\n### 1. Discover servers and notebooks\n\n```\nuv run \"$SCRIPT\" servers --compact\nuv run \"$SCRIPT\" notebooks --compact\n```\n\n### 2. Execute code (primary operation)\n\n```\nuv run \"$SCRIPT\" execute --path \u003Cnotebook.ipynb> --code '\u003Cpython code>' --compact\n```\n\nState persists across execute calls. Variables, imports, objects all survive.\n\nMulti-line code works with $'...' quoting:\n```\nuv run \"$SCRIPT\" execute --path scratch.ipynb --code $'import os\\nfiles = os.listdir(\".\")\\nprint(f\"Found {len(files)} files\")' --compact\n```\n\n### 3. Inspect live variables\n\n```\nuv run \"$SCRIPT\" variables --path \u003Cnotebook.ipynb> list --compact\nuv run \"$SCRIPT\" variables --path \u003Cnotebook.ipynb> preview --name \u003Cvarname> --compact\n```\n\n### 4. Edit notebook cells\n\n```\n# View current cells\nuv run \"$SCRIPT\" contents --path \u003Cnotebook.ipynb> --compact\n\n# Insert a new cell\nuv run \"$SCRIPT\" edit --path \u003Cnotebook.ipynb> insert \\\n  --at-index \u003CN> --cell-type code --source '\u003Ccode>' --compact\n\n# Replace cell source (use cell-id from contents output)\nuv run \"$SCRIPT\" edit --path \u003Cnotebook.ipynb> replace-source \\\n  --cell-id \u003Cid> --source '\u003Cnew code>' --compact\n\n# Delete a cell\nuv run \"$SCRIPT\" edit --path \u003Cnotebook.ipynb> delete --cell-id \u003Cid> --compact\n```\n\n### 5. Verification (restart + run all)\n\nOnly use when the user asks for a clean verification or you need to confirm\nthe notebook runs top-to-bottom:\n\n```\nuv run \"$SCRIPT\" restart-run-all --path \u003Cnotebook.ipynb> --save-outputs --compact\n```\n\n## Practical Tips from Experience\n\n1. **First execution after server start may timeout** — the kernel needs a moment\n   to initialize. If you get a timeout, just retry.\n\n2. **The kernel Python is JupyterLab's Python** — packages must be installed in\n   that environment. If you need additional packages, install them into the\n   JupyterLab tool environment first.\n\n3. **--compact flag saves significant tokens** — always use it. JSON output can\n   be very verbose without it.\n\n4. **For pure REPL use**, create a scratch.ipynb and don't bother with cell editing.\n   Just use `execute` repeatedly.\n\n5. **Argument order matters** — subcommand flags like `--path` go BEFORE the\n   sub-subcommand. E.g.: `variables --path nb.ipynb list` not `variables list --path nb.ipynb`.\n\n6. **If a session doesn't exist yet**, you need to start one via the REST API\n   (see Setup section). The tool can't execute without a live kernel session.\n\n7. **Errors are returned as JSON** with traceback — read the `ename` and `evalue`\n   fields to understand what went wrong.\n\n8. **Occasional websocket timeouts** — some operations may timeout on first try,\n   especially after a kernel restart. Retry once before escalating.\n\n## Timeout Defaults\n\nThe script has a 30-second default timeout per execution. For long-running\noperations, pass `--timeout 120`. Use generous timeouts (60+) for initial\nsetup or heavy computation.\n",{"name":5,"author":48,"license":14,"version":49,"metadata":50,"description":55},"YOUSEF SHTIWE","1.0.0",{"hermes":51},{"tags":52,"category":31},[25,35,53,31,34,54],"repl","iterative","Use a live Jupyter kernel for stateful, iterative Python execution via hamelnb. Load this skill when the task involves exploration, iteration, or inspecting intermediate results — data science, ML experimentation, API exploration, or building up complex code step-by-step. Uses terminal to run CLI commands against a live Jupyter kernel. No new tools required.\n","main","93bbc269671fbb340afa15b36a8766f15dc30df2",".yousef\u002Fskills\u002Fdata-science\u002Fjupyter-live-kernel","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002Fhermes-sovereign-unified-v13.6","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch","2026-04-27 02:51:28",{"source":8,"skillName":5,"commands":63,"prompt":73,"zipAvailable":74},[64,67,70],{"tool":65,"command":66},"npx","npx skills add gjbvsjjvgm-sketch\u002Fhermes-sovereign-unified-v13.6 --skill jupyter-live-kernel",{"tool":68,"command":69},"bunx","bunx skills add gjbvsjjvgm-sketch\u002Fhermes-sovereign-unified-v13.6 --skill jupyter-live-kernel",{"tool":71,"command":72},"pnpm","pnpm dlx skills add gjbvsjjvgm-sketch\u002Fhermes-sovereign-unified-v13.6 --skill jupyter-live-kernel","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002Fhermes-sovereign-unified-v13.6\u002Fblob\u002Fmain\u002F.yousef\u002Fskills\u002Fdata-science\u002Fjupyter-live-kernel\u002FSKILL.md",true,[],[77,114,142,158,177,198],{"skillNo":78,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":95,"publishedAt":43},"01M71G6TJ2RAQ1J0PV3K6D9GQA","writing-plans","Use when you have a spec or requirements for a multi-step task. Creates comprehensive implementation plans with bite-sized tasks, exact file paths, and complete code examples.","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002Fhermes-sovereign-unified-v13.6\u002Fblob\u002Fmain\u002Fhermes_sovereign_data\u002Fskills\u002Fsoftware-development\u002Fwriting-plans\u002FSKILL.md",[83,88,91,92],{"categoryNo":84,"categoryName":85,"taxonomyType":86,"taxonomyTypeDesc":87},"01JBSEEDCAT000000000000015","视觉设计","SCENARIO","使用场景",{"categoryNo":89,"categoryName":90,"taxonomyType":86,"taxonomyTypeDesc":87},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":93,"categoryName":94,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000036","内容创作者",[96,97,98,99,100,101,102,103,104,40,105,106,107,108,109,110,111,112,113,29],"writing","writing plans","plans","design","review","workflow","documentation","tasks","development","planning","code-review","subagent","superpowers","paths","test-driven-development","you","for","test-driven",{"skillNo":115,"name":110,"nameZh":6,"description":116,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":117,"categories":118,"keywords":127,"publishedAt":43},"01M71G6R81013R3T7W5VP56GCB","Use when implementing any feature or bugfix, before writing implementation code. Enforces RED-GREEN-REFACTOR cycle with test-first approach.","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002Fhermes-sovereign-unified-v13.6\u002Fblob\u002Fmain\u002Fhermes_sovereign_data\u002Fskills\u002Fsoftware-development\u002Ftest-driven-development\u002FSKILL.md",[119,122,125,126],{"categoryNo":120,"categoryName":121,"taxonomyType":86,"taxonomyTypeDesc":87},"01JBSEEDCAT000000000000007","代码审查",{"categoryNo":123,"categoryName":124,"taxonomyType":86,"taxonomyTypeDesc":87},"01JBSEEDCAT000000000000008","测试与质量",{"categoryNo":89,"categoryName":90,"taxonomyType":86,"taxonomyTypeDesc":87},{"categoryNo":93,"categoryName":94,"taxonomyType":20,"taxonomyTypeDesc":21},[128,129,104,130,131,96,132,40,133,107,108,134,135,136,137,138,139,140,141,29],"test","test driven development","driven","testing","debugging","refactor","red-green-refactor","cycle","green","systematic","bugfix","implementing","systematic-debugging","test-first",{"skillNo":143,"name":140,"nameZh":6,"description":144,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":145,"categories":146,"keywords":148,"publishedAt":43},"01M71G6N0Y546JZEDF25E2PMCE","Use when encountering any bug, test failure, or unexpected behavior. 4-phase root cause investigation — NO fixes without understanding the problem first.","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002Fhermes-sovereign-unified-v13.6\u002Fblob\u002Fmain\u002Fhermes_sovereign_data\u002Fskills\u002Fsoftware-development\u002Fsystematic-debugging\u002FSKILL.md",[147],{"categoryNo":123,"categoryName":124,"taxonomyType":86,"taxonomyTypeDesc":87},[149,132,137,96,128,104,107,150,108,151,152,153,98,154,110,155,113,156,157,29],"systematic debugging","use","bug","root-cause","problem-solving","problem","fixes","phase","root cause",{"skillNo":159,"name":160,"nameZh":6,"description":161,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":162,"categories":163,"keywords":170,"publishedAt":43},"01M71G6J0DXEGY48GH4KVW2SJH","subagent-driven-development","Use when executing implementation plans with independent tasks. Dispatches fresh delegate_task per task with two-stage review (spec compliance then code quality).","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002Fhermes-sovereign-unified-v13.6\u002Fblob\u002Fmain\u002Fhermes_sovereign_data\u002Fskills\u002Fsoftware-development\u002Fsubagent-driven-development\u002FSKILL.md",[164,165,166,167],{"categoryNo":89,"categoryName":90,"taxonomyType":86,"taxonomyTypeDesc":87},{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":93,"categoryName":94,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":168,"categoryName":169,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000037","律师与法务",[104,171,107,130,96,100,101,172,103,40,173,106,174,175,108,98,176,110,113,29],"subagent driven development","code quality","delegation","parallel","delegate","fresh",{"skillNo":178,"name":179,"nameZh":6,"description":180,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":181,"categories":182,"keywords":185,"publishedAt":43},"01M71G6EFFBQX6634E6XHB09Y1","requesting-code-review","Pre-commit verification pipeline — static security scan, baseline-aware quality gates, independent reviewer subagent, and auto-fix loop. Use after code changes and before committing, pushing, or opening a PR.","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002Fhermes-sovereign-unified-v13.6\u002Fblob\u002Fmain\u002Fhermes_sovereign_data\u002Fskills\u002Fsoftware-development\u002Frequesting-code-review\u002FSKILL.md",[183,184],{"categoryNo":120,"categoryName":121,"taxonomyType":86,"taxonomyTypeDesc":87},{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[186,100,40,187,96,188,106,189,190,191,192,107,193,194,195,108,110,196,197,113],"code review","requesting code review","commit","verification","security scan","pipeline","loop","reviewer","fix","auto","static","auto-fix",{"skillNo":199,"name":200,"nameZh":6,"description":201,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":202,"categories":203,"keywords":204,"publishedAt":43},"01M71G6CM8ANSWVFXCN9AAD58Y","plan","Plan mode for Hermes — inspect context, write a markdown plan into the active workspace's `.hermes\u002Fplans\u002F` directory, and do not execute the work.","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002Fhermes-sovereign-unified-v13.6\u002Fblob\u002Fmain\u002Fhermes_sovereign_data\u002Fskills\u002Fsoftware-development\u002Fplan\u002FSKILL.md",[],[200,96,205,101,104,105,206,107,207,208,209,210,211,212,98,213,214,215,112,216],"directory","markdown","workspace","work","write","implementation","do","active","plan mode","inspect","mode","plan-mode"]