Typesafe API
Define inputs (confirm, select, text), get typed responses inferred at compile time. No parsing, no validation.
const client = new JustackClient({ apiKey: 'jstk_...' });
const session = await client.sessions.create({
name: 'Deploy',
recipients: [{ email: 'reviewer@company.com' }],
});
const { env, approve } = await session.ask('Ship it?', {
inputs: [
{ type: 'select', name: 'env', options: ['staging', 'production'] },
{ type: 'confirm', name: 'approve' },
] as const,
});
// env: string, approve: boolean — inferred from inputs
Typesafe API
Define inputs (confirm, select, text), get typed responses inferred at compile time. No parsing, no validation.
Zero UI to Build
Recipients get a hosted inbox with magic link auth. No frontend to build or maintain.
Real-time Notifications
Recipients are notified instantly and see messages and asks as they stream in.
Simple Control Flow
ask() returns when a human responds, so agent code stays linear. Use callbacks for async.