Перейти к содержимому

Шаблон Claude Code

Шаблон устанавливает закреплённую версию Claude Code, а также Git и ripgrep. После запуска песочницы командная строка уже готова и не загружает пакеты заново.

mjs
import { Sandbox, Template } from "@abox-dev/sdk";

const templateName = process.env.TEMPLATE_NAME ?? "claude-code";
const template = Template()
  .fromNodeImage("24-bookworm-slim")
  .aptInstall(["git", "ripgrep"])
  .npmInstall("@anthropic-ai/claude-code@2.1.252", { g: true });

await Template.build(template, templateName, {
  cpuCount: 2,
  memoryMB: 2_048,
});

const sandbox = await Sandbox.create(templateName);
try {
  const version = await sandbox.commands.run("claude --version");
  console.log(version.stdout);
} finally {
  await sandbox.kill();
}

Пример выводит версию установленной команды и не обращается к Anthropic. Для рабочего сеанса передайте ANTHROPIC_API_KEY при создании песочницы. Не сохраняйте ключ в шаблоне или инструкциях сборки.

При обновлении Claude Code измените закреплённую версию пакета и пересоберите шаблон.