[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6FHB5QBCZ05RGVB245PAKB3":3,"skill-same:01M6FHB5QBCZ05RGVB245PAKB3":100},{"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":17,"publishedAt":38,"linkOnly":39,"markdownContent":40,"markdownBody":41,"frontMatter":42,"refName":54,"commitSha":55,"skillDirectory":56,"forksCount":57,"repositoryHtmlUrl":58,"repositoryHomepageUrl":6,"ownerHtmlUrl":59,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":60,"install":61,"resources":74},"01M6FHB5QBCZ05RGVB245PAKB3","voice-assistant",null,"Real-time voice assistant for OpenClaw. Streams mic audio through configurable STT (Deepgram or ElevenLabs) into your OpenClaw agent, then speaks the response via configurable TTS (Deepgram Aura or ElevenLabs). Sub-2s time-to-first-audio with full streaming at every stage.","kbarbel640-del\u002Fskills","kbarbel640-del","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F255315490?v=4","01M6CJPPQGCCESXMG3K7BBGQ5J","01M6CJPPX2PB2BCZERFVM2C2B3",1,"MIT","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fcharantejmandali18\u002Fvoice-assistant\u002FSKILL.md",[],[18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37],"voice","assistant","voice assistant","install","streams","with","deepgram","via","stage","time","provider","uv","brew","openclaw agent","tts","Audio","first","real-time","streaming","openclaw","2026-11-10 10:12:30",false,"---\nname: voice-assistant\ndescription: Real-time voice assistant for OpenClaw. Streams mic audio through configurable STT (Deepgram or ElevenLabs) into your OpenClaw agent, then speaks the response via configurable TTS (Deepgram Aura or ElevenLabs). Sub-2s time-to-first-audio with full streaming at every stage.\nmetadata:\n  openclaw:\n    emoji: \"?️\"\n    requires:\n      bins: [\"uv\"]\n      env: []\n    primaryEnv: \"VOICE_STT_PROVIDER\"\n    install:\n      - id: \"uv\"\n        kind: \"brew\"\n        formula: \"uv\"\n        bins: [\"uv\"]\n        label: \"Install uv (brew)\"\n---\n\n# Voice Assistant\n\nReal-time voice interface for your OpenClaw agent. Talk to your agent and hear it respond — with configurable STT and TTS providers, full streaming at every stage, and sub-2 second time-to-first-audio.\n\n## Architecture\n\n```\nBrowser Mic → WebSocket → STT (Deepgram \u002F ElevenLabs) → Text\n  → OpenClaw Gateway (\u002Fv1\u002Fchat\u002Fcompletions, streaming) → Response Text\n  → TTS (Deepgram Aura \u002F ElevenLabs) → Audio chunks → Browser Speaker\n```\n\nThe voice interface connects to your running OpenClaw gateway's OpenAI-compatible endpoint. It's the same agent with all its context, tools, and memory — just with a voice.\n\n## Quick Start\n\n```bash\ncd {baseDir}\ncp .env.example .env\n# Fill in your API keys and gateway URL\nuv run scripts\u002Fserver.py\n# Open http:\u002F\u002Flocalhost:7860 and click the mic\n```\n\n## Supported Providers\n\n### STT (Speech-to-Text)\n| Provider   | Model            | Latency  | Notes                        |\n|-----------|------------------|----------|------------------------------|\n| Deepgram  | nova-2 (streaming) | ~200-300ms | WebSocket streaming, best accuracy\u002Fspeed |\n| ElevenLabs | Scribe v1        | ~300-500ms | REST-based, good multilingual |\n\n### TTS (Text-to-Speech)\n| Provider    | Model        | Latency  | Notes                          |\n|------------|--------------|----------|--------------------------------|\n| Deepgram   | aura-2       | ~200ms   | WebSocket streaming, low cost  |\n| ElevenLabs | Turbo v2.5   | ~300ms   | Best voice quality, streaming   |\n\n## Configuration\n\nAll configuration is via environment variables in `.env`:\n\n```bash\n# === Required ===\nOPENCLAW_GATEWAY_URL=http:\u002F\u002Flocalhost:4141\u002Fv1    # Your OpenClaw gateway\nOPENCLAW_MODEL=claude-sonnet-4-5-20250929        # Model your gateway routes to\n\n# === STT Provider (pick one) ===\nVOICE_STT_PROVIDER=deepgram                      # \"deepgram\" or \"elevenlabs\"\nDEEPGRAM_API_KEY=your-key-here                   # Required if STT=deepgram\nELEVENLABS_API_KEY=your-key-here                 # Required if STT=elevenlabs\n\n# === TTS Provider (pick one) ===\nVOICE_TTS_PROVIDER=elevenlabs                    # \"deepgram\" or \"elevenlabs\"\n# Uses the same API keys as above\n\n# === Optional Tuning ===\nVOICE_TTS_VOICE=rachel                           # ElevenLabs voice name\u002FID\nVOICE_TTS_VOICE_DG=aura-2-theia-en              # Deepgram Aura voice\nVOICE_VAD_SILENCE_MS=400                         # Silence before end-of-turn (ms)\nVOICE_SAMPLE_RATE=16000                          # Audio sample rate\nVOICE_SERVER_PORT=7860                           # Server port\nVOICE_SYSTEM_PROMPT=\"\"                           # Optional system prompt override\n```\n\n## Provider Combinations\n\n| Setup                              | Best For                        |\n|------------------------------------|---------------------------------|\n| Deepgram STT + ElevenLabs TTS     | Best quality voice output        |\n| Deepgram STT + Deepgram TTS       | Lowest latency, single vendor    |\n| ElevenLabs STT + ElevenLabs TTS   | Best multilingual support        |\n\n## How It Works\n\n1. **Browser captures mic audio** via Web Audio API and streams raw PCM over a WebSocket\n2. **Server receives audio** and pipes it to the configured STT provider's streaming endpoint\n3. **STT returns partial transcripts** in real-time; on end-of-utterance the full text is sent to the OpenClaw gateway\n4. **OpenClaw gateway streams** the LLM response token-by-token via SSE (Server-Sent Events)\n5. **Tokens are accumulated** into sentence-sized chunks and streamed to the TTS provider\n6. **TTS returns audio chunks** that are immediately forwarded to the browser over the same WebSocket\n7. **Browser plays audio** using the Web Audio API with a jitter buffer for smooth playback\n\n## Interruption Handling (Barge-In)\n\nWhen the user starts speaking while the agent is still talking:\n- Current TTS audio is immediately cancelled\n- The agent stops its current response\n- New STT session begins capturing the user's interruption\n\n## Usage Examples\n\n```\nUser: \"Hey, set up my voice assistant\"\n→ OpenClaw runs: cd {baseDir} && cp .env.example .env\n→ Opens .env for the user to fill in API keys\n→ Runs: uv run scripts\u002Fserver.py\n\nUser: \"Start a voice chat\"\n→ Opens http:\u002F\u002Flocalhost:7860 in the browser\n\nUser: \"Switch TTS to Deepgram\"\n→ Updates VOICE_TTS_PROVIDER=deepgram in .env\n→ Restarts the server\n```\n\n## Troubleshooting\n\n- **No audio output?** Check that your TTS API key is valid and the provider is set correctly\n- **High latency?** Use Deepgram for both STT and TTS; ensure your gateway is on the same network\n- **Cuts off speech?** Increase `VOICE_VAD_SILENCE_MS` to 600-800ms\n- **Echo\u002Ffeedback?** Use headphones, or enable the built-in echo cancellation in the browser UI\n\n## Latency Budget\n\n| Stage                    | Target    | Actual (typical) |\n|-------------------------|-----------|------------------|\n| Audio capture + VAD     | \u003C200ms    | ~100-150ms       |\n| STT transcription       | \u003C400ms    | ~200-400ms       |\n| OpenClaw LLM first token| \u003C1500ms   | ~500-1500ms      |\n| TTS first audio chunk   | \u003C400ms    | ~200-400ms       |\n| **Total first audio**   | **\u003C2.5s** | **~1.0-2.5s**    |\n","# Voice Assistant\n\nReal-time voice interface for your OpenClaw agent. Talk to your agent and hear it respond — with configurable STT and TTS providers, full streaming at every stage, and sub-2 second time-to-first-audio.\n\n## Architecture\n\n```\nBrowser Mic → WebSocket → STT (Deepgram \u002F ElevenLabs) → Text\n  → OpenClaw Gateway (\u002Fv1\u002Fchat\u002Fcompletions, streaming) → Response Text\n  → TTS (Deepgram Aura \u002F ElevenLabs) → Audio chunks → Browser Speaker\n```\n\nThe voice interface connects to your running OpenClaw gateway's OpenAI-compatible endpoint. It's the same agent with all its context, tools, and memory — just with a voice.\n\n## Quick Start\n\n```bash\ncd {baseDir}\ncp .env.example .env\n# Fill in your API keys and gateway URL\nuv run scripts\u002Fserver.py\n# Open http:\u002F\u002Flocalhost:7860 and click the mic\n```\n\n## Supported Providers\n\n### STT (Speech-to-Text)\n| Provider   | Model            | Latency  | Notes                        |\n|-----------|------------------|----------|------------------------------|\n| Deepgram  | nova-2 (streaming) | ~200-300ms | WebSocket streaming, best accuracy\u002Fspeed |\n| ElevenLabs | Scribe v1        | ~300-500ms | REST-based, good multilingual |\n\n### TTS (Text-to-Speech)\n| Provider    | Model        | Latency  | Notes                          |\n|------------|--------------|----------|--------------------------------|\n| Deepgram   | aura-2       | ~200ms   | WebSocket streaming, low cost  |\n| ElevenLabs | Turbo v2.5   | ~300ms   | Best voice quality, streaming   |\n\n## Configuration\n\nAll configuration is via environment variables in `.env`:\n\n```bash\n# === Required ===\nOPENCLAW_GATEWAY_URL=http:\u002F\u002Flocalhost:4141\u002Fv1    # Your OpenClaw gateway\nOPENCLAW_MODEL=claude-sonnet-4-5-20250929        # Model your gateway routes to\n\n# === STT Provider (pick one) ===\nVOICE_STT_PROVIDER=deepgram                      # \"deepgram\" or \"elevenlabs\"\nDEEPGRAM_API_KEY=your-key-here                   # Required if STT=deepgram\nELEVENLABS_API_KEY=your-key-here                 # Required if STT=elevenlabs\n\n# === TTS Provider (pick one) ===\nVOICE_TTS_PROVIDER=elevenlabs                    # \"deepgram\" or \"elevenlabs\"\n# Uses the same API keys as above\n\n# === Optional Tuning ===\nVOICE_TTS_VOICE=rachel                           # ElevenLabs voice name\u002FID\nVOICE_TTS_VOICE_DG=aura-2-theia-en              # Deepgram Aura voice\nVOICE_VAD_SILENCE_MS=400                         # Silence before end-of-turn (ms)\nVOICE_SAMPLE_RATE=16000                          # Audio sample rate\nVOICE_SERVER_PORT=7860                           # Server port\nVOICE_SYSTEM_PROMPT=\"\"                           # Optional system prompt override\n```\n\n## Provider Combinations\n\n| Setup                              | Best For                        |\n|------------------------------------|---------------------------------|\n| Deepgram STT + ElevenLabs TTS     | Best quality voice output        |\n| Deepgram STT + Deepgram TTS       | Lowest latency, single vendor    |\n| ElevenLabs STT + ElevenLabs TTS   | Best multilingual support        |\n\n## How It Works\n\n1. **Browser captures mic audio** via Web Audio API and streams raw PCM over a WebSocket\n2. **Server receives audio** and pipes it to the configured STT provider's streaming endpoint\n3. **STT returns partial transcripts** in real-time; on end-of-utterance the full text is sent to the OpenClaw gateway\n4. **OpenClaw gateway streams** the LLM response token-by-token via SSE (Server-Sent Events)\n5. **Tokens are accumulated** into sentence-sized chunks and streamed to the TTS provider\n6. **TTS returns audio chunks** that are immediately forwarded to the browser over the same WebSocket\n7. **Browser plays audio** using the Web Audio API with a jitter buffer for smooth playback\n\n## Interruption Handling (Barge-In)\n\nWhen the user starts speaking while the agent is still talking:\n- Current TTS audio is immediately cancelled\n- The agent stops its current response\n- New STT session begins capturing the user's interruption\n\n## Usage Examples\n\n```\nUser: \"Hey, set up my voice assistant\"\n→ OpenClaw runs: cd {baseDir} && cp .env.example .env\n→ Opens .env for the user to fill in API keys\n→ Runs: uv run scripts\u002Fserver.py\n\nUser: \"Start a voice chat\"\n→ Opens http:\u002F\u002Flocalhost:7860 in the browser\n\nUser: \"Switch TTS to Deepgram\"\n→ Updates VOICE_TTS_PROVIDER=deepgram in .env\n→ Restarts the server\n```\n\n## Troubleshooting\n\n- **No audio output?** Check that your TTS API key is valid and the provider is set correctly\n- **High latency?** Use Deepgram for both STT and TTS; ensure your gateway is on the same network\n- **Cuts off speech?** Increase `VOICE_VAD_SILENCE_MS` to 600-800ms\n- **Echo\u002Ffeedback?** Use headphones, or enable the built-in echo cancellation in the browser UI\n\n## Latency Budget\n\n| Stage                    | Target    | Actual (typical) |\n|-------------------------|-----------|------------------|\n| Audio capture + VAD     | \u003C200ms    | ~100-150ms       |\n| STT transcription       | \u003C400ms    | ~200-400ms       |\n| OpenClaw LLM first token| \u003C1500ms   | ~500-1500ms      |\n| TTS first audio chunk   | \u003C400ms    | ~200-400ms       |\n| **Total first audio**   | **\u003C2.5s** | **~1.0-2.5s**    |\n",{"name":5,"metadata":43,"description":7},{"openclaw":44},{"emoji":45,"install":46,"requires":50,"primaryEnv":53},"?️",[47],{"id":29,"bins":48,"kind":30,"label":49,"formula":29},[29],"Install uv (brew)",{"env":51,"bins":52},[],[29],"VOICE_STT_PROVIDER","main","e7e336ac628c3e3bd771aff1aaa469c93778f94a","skills\u002Fcharantejmandali18\u002Fvoice-assistant",0,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del","2026-08-23 22:39:37",{"source":8,"skillName":5,"commands":62,"prompt":72,"zipAvailable":73},[63,66,69],{"tool":64,"command":65},"npx","npx skills add kbarbel640-del\u002Fskills --skill voice-assistant",{"tool":67,"command":68},"bunx","bunx skills add kbarbel640-del\u002Fskills --skill voice-assistant",{"tool":70,"command":71},"pnpm","pnpm dlx skills add kbarbel640-del\u002Fskills --skill voice-assistant","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fcharantejmandali18\u002Fvoice-assistant\u002FSKILL.md",true,[75,81,87,92,96],{"path":76,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":79,"sourceHtmlUrl":80},"_meta.json","REFERENCE","参考文档",294,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fcharantejmandali18\u002Fvoice-assistant\u002F_meta.json",{"path":82,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":85,"sourceHtmlUrl":86},"pyproject.toml","OTHER","其他",613,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fcharantejmandali18\u002Fvoice-assistant\u002Fpyproject.toml",{"path":88,"resourceType":89,"resourceTypeDesc":90,"sizeBytes":57,"sourceHtmlUrl":91},"scripts\u002F__init__.py","SCRIPT","脚本","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fcharantejmandali18\u002Fvoice-assistant\u002Fscripts\u002F__init__.py",{"path":93,"resourceType":89,"resourceTypeDesc":90,"sizeBytes":94,"sourceHtmlUrl":95},"scripts\u002Fserver.py",22102,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fcharantejmandali18\u002Fvoice-assistant\u002Fscripts\u002Fserver.py",{"path":97,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":98,"sourceHtmlUrl":99},"static\u002Findex.html",14646,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fcharantejmandali18\u002Fvoice-assistant\u002Fstatic\u002Findex.html",[101,131,158,178,184,204],{"skillNo":102,"name":103,"nameZh":6,"description":104,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":105,"categories":106,"keywords":112,"publishedAt":38},"01M6G8J55967D6281ACMKAKTEQ","crowd-prompting","A marketplace where AI agents improve prompts, system instructions, tool descriptions, and other text-based content with domain expertise from real-world operations — and earn tokens for valuable contributions.","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzzadrian\u002Fcrowd-prompting\u002FSKILL.md",[107],{"categoryNo":108,"categoryName":109,"taxonomyType":110,"taxonomyTypeDesc":111},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[113,114,115,23,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130],"crowd prompting","prompting","api","tokens","domain","world","prompts","operations","instructions","text","tool","system","improve","productivity","marketplace","https","content","ai agents",{"skillNo":132,"name":133,"nameZh":6,"description":134,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":135,"categories":136,"keywords":142,"publishedAt":38},"01M6G8J0PKPAYVET6BWE8W4C26","dilemm-ai","Compete in DilemmAI, the prisoner's dilemma AI arena at dilemm.ai. Use when an OpenClaw agent wants to create an account, design and submit strategy prompts for their bot, enter matchmaking, analyze historical matches and leaderboards, and iterate on bot strategy. Requires headless browser automation (no API available yet).","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzyori\u002Fdilemm-ai\u002FSKILL.md",[137],{"categoryNo":138,"categoryName":139,"taxonomyType":140,"taxonomyTypeDesc":141},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[143,115,144,145,146,31,147,148,149,150,37,151,152,153,154,155,156,119,157],"dilemm ai","arena","analyze","browser","create","automation","browser automation","bot","design","strategy","headless","compete","submit","matchmaking","use",{"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":167,"publishedAt":38},"01M6G8HWAF3K9SW7NP3Z83CPJ6","arxiv-paper-reviews","Interact with arXiv Crawler API to fetch papers, read reviews, and submit comments. Use when working with arXiv papers, fetching paper lists by date\u002Fcategory\u002Finterest, viewing paper details with comments, or submitting paper reviews via API at http:\u002F\u002F150.158.152.82:8000.","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzxrys\u002Fweak-accept\u002FSKILL.md",[164],{"categoryNo":165,"categoryName":166,"taxonomyType":140,"taxonomyTypeDesc":141},"01JBSEEDCAT000000000000021","资料检索与研究",[168,169,170,171,172,173,174,23,175,155,157,176,115,177,25],"arxiv paper reviews","reviews","arxiv","paper","crawler","papers","comments","fetch","read","http",{"skillNo":179,"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":180,"categories":181,"keywords":183,"publishedAt":38},"01M6G8HQJ7N7WMY6YV7D7SSJ16","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzxrys\u002Farxiv-paper-reviews\u002FSKILL.md",[182],{"categoryNo":165,"categoryName":166,"taxonomyType":140,"taxonomyTypeDesc":141},[171,170,169,168,25,173,174,23,172,155,157,175,176,115,177],{"skillNo":185,"name":186,"nameZh":6,"description":187,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":188,"categories":189,"keywords":190,"publishedAt":38},"01M6G8HM95Y64JNVFC2HN4E2BG","git-summary","Get a quick summary of the current Git repository including status, recent commits, branches, and contributors.","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzweack\u002Fgit-summary\u002FSKILL.md",[],[191,192,193,194,195,196,197,198,199,200,201,202,203],"git","summary","git summary","commits","repository","win32","status","linux","contributors","true","quick","get","branches",{"skillNo":205,"name":206,"nameZh":6,"description":207,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":208,"categories":209,"keywords":214,"publishedAt":38},"01M6G8HGEGF05CNEJCGVYFSC4R","agent-constitution","Interact with AgentConstitution governance contracts on Base Sepolia. Check compliance, read rules, log actions, query governance state.","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fztsalexey\u002Fagent-constitution\u002FSKILL.md",[210,211],{"categoryNo":138,"categoryName":139,"taxonomyType":140,"taxonomyTypeDesc":141},{"categoryNo":212,"categoryName":213,"taxonomyType":110,"taxonomyTypeDesc":111},"01JBSEEDCAT000000000000037","律师与法务",[215,216,217,218,23,219,220,54,221,176,222,223,224,225,226,128,227,228,229],"agent constitution","constitution","contracts","tree","query","base","log","check","Rules","projects","compliance","actions","state","governance","github"]