استفاده بهعنوان SDK
فراخوانی AiraCode از داخل برنامهٔ خودت — Node.js، Python، Go.
AiraCode یک CLI استاندارد POSIXست — یعنی هر زبانی که میتونه subprocess اجرا کنه، میتونه ازش بهعنوان SDK استفاده کنه. این الگو رو «shell-out SDK» میگن و یکی از پایدارترین interfaceهاست.
از Node.js
import { execa } from 'execa';
const { stdout } = await execa('aira', [
'-p', 'خلاصهٔ این کدبیس رو بنویس',
'--model', 'aira-pro',
'--output-format', 'json',
], {
env: { ...process.env, AIRA_API_KEY: process.env.AIRA_API_KEY },
});
const result = JSON.parse(stdout);از Python
import subprocess, json, os
result = subprocess.run(
['aira', '-p', 'تستها رو اجرا کن', '--output-format', 'json'],
capture_output=True, text=True,
env={**os.environ, 'AIRA_API_KEY': os.environ['AIRA_API_KEY']},
check=True,
)
data = json.loads(result.stdout)از Go
cmd := exec.Command("aira", "-p", "خروجی توابع رو type-check کن", "--output-format", "json")
cmd.Env = append(os.Environ(), "AIRA_API_KEY="+token)
out, err := cmd.Output()خروجی stream
برای دیدن خروجی real-time به جای منتظر ماندن، از --output-format stream-json استفاده کن. هر event بهصورت یک خط JSON روی stdout میآد.
aira -p "..." --output-format stream-json | while read line; do echo "event: $line" done
حالت server (advanced)
برای کاهش overhead startup در use caseهای latency-sensitive، AiraCode از یک حالت persistent server هم پشتیبانی میکنه:
# server-side:
aira server --port 9000 --auth-token my-secret
# client-side (هر تعداد req):
curl -X POST -H "Authorization: Bearer my-secret" \
-d '{"prompt":"..."}' http://localhost:9000/run