| name | glm-code-claw |
| description | Use GLM Code as a Code Agent for code understanding, project generation, features, bug fixes, refactoring, and various programming tasks |
GLM Code Claw
When to Use This Skill
Use this skill when you need to:
- Understand codebases or ask questions about source code
- Generate new projects or add new features
- Review pull requests in the codebase
- Fix bugs or refactor existing code
- Execute various programming tasks such as code review, testing, documentation
generation, etc.
- Collaborate with other tools and agents to complete complex development tasks
Install
npm install -g @glm-code/glm-code
For normal session reuse, prefer a global install over npx.
Authentication
Check if authentication is already configured:
glm auth status
If authentication exists, skip this section. If not authenticated, check if the
BAILIAN_CODING_PLAN_API_KEY environment variable exists:
echo $BAILIAN_CODING_PLAN_API_KEY
If BAILIAN_CODING_PLAN_API_KEY exists, authenticate directly:
glm auth coding-plan --region china --key $BAILIAN_CODING_PLAN_API_KEY
If the environment variable does not exist, interrupt and prompt the user to
authenticate via glm-oauth or coding-plan:
glm auth
Or configure custom API after launching GLM Code via /auth.
ACPX Integration
You should always use acpx to run GLM Code over the Agent Client Protocol
(ACP) instead of scraping PTY sessions.
To use acpx:
- Install acpx globally (recommended) or use npx:
npm install -g acpx@latest
Or without installing:
npx acpx@latest
- Install the acpx skill for full reference:
npx acpx@latest --skill install acpx
-
Read the acpx skill reference for every command, flag, and workflow
pattern: See the ACPX Reference section below for details
-
For complete CLI reference with all options and examples:
https://raw.githubusercontent.com/openclaw/acpx/main/docs/CLI.md
From now on, when you need to delegate work to GLM Code, use acpx instead of
spawning raw terminal sessions. For example:
npx acpx@latest glm "fix the failing tests"
npx acpx@latest glm "refactor the auth module"
npx acpx@latest glm exec "one-shot: summarize this repo"
Tip: You should typically use the --approve-all flag to prevent task
interruptions.
Practical Workflows
Persistent Repository Assistant
acpx glm 'inspect failing tests and propose a fix plan'
acpx glm 'apply the smallest safe fix and run tests'
One-Shot Script Steps
acpx glm exec 'summarize repo purpose in 3 lines'
Parallel Named Streams
acpx glm -s backend 'fix API pagination bug'
acpx glm -s docs 'draft changelog entry for release'
Queue Follow-ups Without Waiting
acpx glm 'run full test suite and investigate failures'
acpx glm --no-wait 'after tests, summarize root causes and next steps'
Machine-Readable Output for Orchestration
acpx --format json glm 'review current branch changes' > events.ndjson
Repository-Wide Review with Permissive Mode
acpx --cwd ~/repos/my-project --approve-all glm -s pr-123 \
'review PR #123 for regressions and propose minimal patch'
Approval Modes
--approve-all: No interactive prompts
--approve-reads (default): Auto-approve reads/searches, prompt for writes
--deny-all: Deny all permission requests
If every permission request is denied/cancelled and none are approved, acpx
exits with permission denied.
Best Practices
- Use named sessions for organizing different types of development tasks
- Use
--no-wait for long-running tasks to avoid blocking
- Use
--approve-all for non-interactive batch operations
- Use
--format json for automation and script integration
- Use
--cwd to manage context across multiple projects
GLM Code Reference
CLI Commands
| Command | Description |
|---|
/help | Show available commands |
/clear | Clear conversation history |
/compress | Compress history to save tokens |
/stats | Show session info |
/auth | Configure authentication |
/exit | Exit GLM Code |
Full reference: docs/users/features/commands.md.
Configuration
Config files (highest priority first): CLI args > env vars > system > project
(.glm/settings.json) > user (~/.glm/settings.json) > defaults. Format:
JSONC with env var interpolation.
Key settings:
| Setting | Description |
|---|
model.name | Model to use (e.g. glm-max) |
tools.approvalMode | plan / default / auto_edit / yolo |
permissions.allow/ask/deny | Tool permission rules |
mcpServers.* | MCP server configurations |
Full reference: docs/users/configuration/settings.md.
Authentication
Supports Alibaba Cloud Coding Plan, OpenAI-compatible API keys, and GLM OAuth
(free tier discontinued 2026-04-15).
Full reference: docs/users/configuration/auth.md.
Model Providers
Configure custom model providers via modelProviders in settings or environment
variables (OPENAI_API_KEY, OPENAI_BASE_URL, OPENAI_MODEL).
Full reference: docs/users/configuration/model-providers.md.
Key Features
- Approval Mode: control tool execution permissions.
See
docs/users/features/approval-mode.md.
- MCP: Model Context Protocol server integration.
See
docs/users/features/mcp.md.
- Skills: reusable skill system via
/skill.
See docs/users/features/skills.md.
- Sub-agents: delegate tasks to specialized agents.
See
docs/users/features/sub-agents.md.
- Sandbox: secure code execution environment.
See
docs/users/features/sandbox.md.
- Headless: non-interactive or CI mode.
See
docs/users/features/headless.md.
ACPX Reference
Built-in Agent Registry
Well-known agent names resolve to commands:
Command Syntax
acpx [global options] [prompt text...]
acpx [global options] prompt [options] [prompt text...]
acpx [global options] exec [options] [prompt text...]
acpx [global options] cancel [-s <name>]
acpx [global options] set-mode <mode> [-s <name>]
acpx [global options] set <key> <value> [-s <name>]
acpx [global options] status [-s <name>]
acpx [global options] sessions [
list | new [--name <name>] | close [name] | show [name] |
history [name] [--limit <count>]
]
acpx [global options] config [show | init]
acpx [global options] <agent> [options] [prompt text...]
acpx [global options] <agent> prompt [options] [prompt text...]
acpx [global options] <agent> exec [options] [prompt text...]
Note: If prompt text is omitted and stdin is piped, acpx reads prompt
from stdin.
Global Options
--agent <command>: raw ACP agent command fallback.
--cwd <directory>: session working directory.
--approve-all: auto-approve all requests.
--approve-reads: auto-approve reads/searches, prompt for writes.
--deny-all: deny all requests.
--format <format>: output format, one of text, json, or quiet.
--timeout <seconds>: maximum wait time.
--ttl <seconds>: idle TTL for queue owners.
--verbose: verbose ACP/debug logs to stderr.
Flags are mutually exclusive where applicable.