Skip to content

SDK Overview

AgentProc SDKs remove the boilerplate of reading the turn object from stdin and writing NDJSON events to stdout, so you can focus on your agent logic.

Available SDKs

LanguagePackageInstall
Pythonagentprocpip install agentproc
Node.jsagentprocnpm install agentproc
Rustagentproccargo add agentproc

Without an SDK

You don't need an SDK. Any script that reads a {"type":"turn",...} object from stdin and writes NDJSON events to stdout works. See Bare script examples.

With an SDK

Write one async function. The SDK handles the rest.

python
from agentproc import create_profile

async def handler(ctx):
    reply = await my_llm(ctx.message)
    return reply

create_profile(handler)
js
const { createProfile } = require('agentproc');

createProfile(async ({ message }) => {
  const reply = await myLLM(message);
  return { response: reply };
});
rust
use agentproc::{run, Profile, RunOptions};

#[tokio::main]
async fn main() -> anyhow::Result<()> {
    let profile = Profile::from_path("profile.yaml")?;
    let result = run(&profile, RunOptions::new("hello")).await?;
    println!("{}", result.reply);
    Ok(())
}

Released under the MIT License.