@cuylabs/agent-code
v4.5.0
Published
Embeddable AI coding agent built on @cuylabs/agent-core
Maintainers
Readme
@cuylabs/agent-code
Coding-agent package built on @cuylabs/agent-core.
It gives you a ready-made coding toolset and a convenience package for starting from a coding-focused surface without rebuilding the common file and shell tools yourself.
Package Boundary
Use @cuylabs/agent-code when you want:
- the built-in coding tools
defaultCodingToolsfor a full coding agent- easy read-only or no-shell tool subsets
- a convenience package that re-exports
agent-core
Use @cuylabs/agent-core directly when you need lower-level framework surfaces
such as:
- middleware and prompt construction
- runtime helpers
- skills, profiles, and subagent composition
- non-coding toolsets or framework-level customization
Focused tool imports are available from @cuylabs/agent-code/tools.
Included Tools
| Tool | Purpose |
|------|---------|
| read | Read file contents with line numbers |
| write | Create or overwrite files |
| edit | Surgical text replacement |
| grep | Search file contents with regex |
| glob | Find files by glob pattern |
| bash | Execute shell commands |
Installation
npm install @cuylabs/agent-code ai @ai-sdk/openai
# or
pnpm add @cuylabs/agent-code ai @ai-sdk/openaiQuick Start
import { createAgent, defaultCodingTools } from "@cuylabs/agent-code";
import { openai } from "@ai-sdk/openai";
const agent = createAgent({
model: openai("gpt-4o"),
cwd: process.cwd(),
tools: defaultCodingTools,
});
const { response } = await agent.send(
"session-1",
"List the TypeScript files in src and summarize what each one does.",
);
console.log(response);Choosing A Tool Set
Use the default set:
import { createAgent, defaultCodingTools } from "@cuylabs/agent-code";
const agent = createAgent({
model,
cwd: process.cwd(),
tools: defaultCodingTools,
});Or build a narrower agent:
import {
createAgent,
readTool,
grepTool,
globTool,
} from "@cuylabs/agent-code";
const readOnlyAgent = createAgent({
model,
cwd: process.cwd(),
tools: [readTool, grepTool, globTool],
});If you only want the tool surface:
import { defaultCodingTools, readTool } from "@cuylabs/agent-code/tools";Relationship To agent-core
agent-code is the coding-tool layer. It does not own the lower-level agent
framework semantics.
agent-coreowns sessions, middleware, runtime helpers, prompt construction, and tracingagent-codeadds a coding-focused toolset and convenience defaults on top
So if your main need is “give my agent practical coding tools,” use
agent-code. If your main need is “customize the framework internals,” use
agent-core.
Learn More
- examples/README.md for runnable examples
- docs/README.md for per-tool guides
- docs/read.md, docs/edit.md, and docs/bash.md for the tool details most people care about first
License
Apache-2.0
