원클릭으로
deploy-ai-agent
Deploy and manage AI agent workloads with GPU checks, API key management, and health monitoring
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Deploy and manage AI agent workloads with GPU checks, API key management, and health monitoring
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Generate a concise daily infrastructure briefing. Covers: service health, resource usage, security events, overnight incidents, and cost tracking. Designed for Telegram/chat delivery.
Multi-perspective risk analysis using structured persona debate before deploying changes
Build software via spec-driven development (github/spec-kit). Whenever the user asks for a feature larger than a one-line tweak, scaffold a spec-kit project, capture WHAT + WHY, declare tech stack, break into tasks, then iterate the implementation until tests pass.
Large-scale social simulation with 50-200 demographically diverse AI personas debating on a simulated Twitter/Reddit board to predict outcomes
Detect configuration drift — manual changes that exist outside NixOS management. Offer to bring imperative changes into declarative config.
Deploy and manage user applications as managed systemd services
| name | deploy-ai-agent |
| description | Deploy and manage AI agent workloads with GPU checks, API key management, and health monitoring |
| activation | auto |
| tools | ["app_deploy","app_list","app_logs","app_stop","app_restart","app_remove","system_discover","system_health","system_query","shell_exec","file_write","file_read","memory_store","journal_logs","watcher_add"] |
Deploy AI agent workloads (LangChain, CrewAI, AutoGen, custom frameworks) as managed systemd services with resource monitoring, API key management, and health checks.
system_health to verify RAM, disk, and CPU are sufficient. Check for GPU with shell_exec running nvidia-smi or ls /dev/driapp_deploy with appropriate resource limits, environment variables pointing to secrets, and a health-check-friendly portapp_logs for successful startup. Use system_discover to confirm the agent's port is listening.watcher_add to auto-restart on failurememory_store to save deployment details for future referenceapp_deploy({
name: "my-agent",
command: "/var/lib/osmoda/apps/my-agent/venv/bin/uvicorn",
args: ["app:app", "--host", "0.0.0.0", "--port", "8000"],
working_dir: "/var/lib/osmoda/apps/my-agent",
env: {
ANTHROPIC_API_KEY_FILE: "/var/lib/osmoda/secrets/anthropic-key",
OPENAI_API_KEY_FILE: "/var/lib/osmoda/secrets/openai-key"
},
port: 8000,
memory_max: "1G",
cpu_quota: "200%"
})
app_deploy({
name: "crew-agent",
command: "/var/lib/osmoda/apps/crew-agent/venv/bin/python",
args: ["-m", "crew_agent.main"],
working_dir: "/var/lib/osmoda/apps/crew-agent",
env: {
ANTHROPIC_API_KEY_FILE: "/var/lib/osmoda/secrets/anthropic-key"
},
port: 8001,
memory_max: "2G"
})
app_deploy({
name: "node-agent",
command: "/usr/bin/node",
args: ["index.js"],
working_dir: "/home/user/agent",
env: {
NODE_ENV: "production",
PORT: "3000",
API_KEY_FILE: "/var/lib/osmoda/secrets/agent-api-key"
},
port: 3000,
memory_max: "512M"
})
Never put API keys in environment variables directly. Write them to the secrets directory:
file_write to /var/lib/osmoda/secrets/<key-name> (0600 permissions)*_FILE convention) or read it in the app's entrypointBefore deploying, verify:
| Resource | Check | Minimum |
|---|---|---|
| RAM | system_health → memory_available | 1 GB free for small agents, 4 GB+ for GPU workloads |
| Disk | system_health → disks[0].available | 2 GB for deps + model cache |
| CPU | system_health → cpu_usage | 2+ cores recommended |
| GPU | shell_exec: nvidia-smi or ls /dev/dri | Optional — needed for local model inference |
| Python | shell_exec: python3 --version | 3.10+ for most frameworks |
| Node.js | shell_exec: node --version | 18+ for modern agent frameworks |
After deployment, set up a watcher:
watcher_add({
name: "my-agent-health",
check: {
type: "http_get",
url: "http://127.0.0.1:8000/health",
expected_status: 200
},
interval_secs: 30,
actions: ["restart", "notify"]
})
For agents without HTTP endpoints, use a process check:
watcher_add({
name: "my-agent-alive",
check: {
type: "systemd_unit",
unit: "osmoda-app-my-agent.service"
},
interval_secs: 60,
actions: ["restart", "notify"]
})
app_logs({ name: "my-agent", lines: 50 }) for Python import errors or missing dependenciesmemory_max or check if the model is too large for available RAMfile_read({ path: "/var/lib/osmoda/secrets/anthropic-key" })system_discover to find what's on that port, then pick another