JSPM

  • Created
  • Published
  • Downloads 54
  • Score
    100M100P100Q91940F
  • License Apache-2.0

Embeddable AI coding agent built on @cuylabs/agent-core

Package Exports

  • @cuylabs/agent-code
  • @cuylabs/agent-code/tools

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
  • defaultCodingTools for 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/openai

Quick 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-core owns sessions, middleware, runtime helpers, prompt construction, and tracing
  • agent-code adds 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

License

Apache-2.0