quickstart
Skill0 starsChanged 2 months agoMITView on GitHub
End-to-end orchestration for a first Talkif integration — API key → flow from a template → phone number → connect → test call → read results — naming which skill to load at each step. Use as the entry point when asked to "set up Talkif", "build a phone agent", or "make my first call" from code.
- Reads credentials
9 other projects use a version of this.
Adopted by
Most recently taken up by
- NangoHQ/skillstheir own version, first seen Nov 4, 2026
- databricks/app-templatestheir own version, first seen Oct 8, 2026
- apache/pinottheir own version, first seen Oct 8, 2026
- joris887/exosuittheir own version, first seen Aug 20, 2026
- scadastrangelove/rust-in-peacetheir own version, first seen Aug 3, 2026
- anthropics/defending-code-reference-harnesstheir own version, first seen Jul 16, 2026
Other versions9 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 9
- anthropics/defending-code-reference-harness★ 7.5ksame name
- apache/pinot★ 6.2ksame name
- databricks/app-templates★ 218same name
- scadastrangelove/rust-in-peace★ 25same name
- joris887/exosuit★ 9same name
- NangoHQ/skills★ 3same name
- IdkwhatImD0ing/hackathonstarterkit★ 2same name
- JustineDevs/premortem★ 2same name
- brainsparker/skills★ 1same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository22 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- api-conventionsSkill
- choose-models-and-voicesSkill
- create-campaignSkill
- create-flow-functionSkill
- create-flowSkill
- create-scheduleSkill
- do-not-callSkill
- handle-inbound-callsSkill
- make-callSkill
- manage-contactsSkill
- manage-phone-numbersSkill
- read-billingSkill
- read-call-resultsSkill
- realtime-eventsSkill
- setup-api-keySkill
- test-a-flowSkill
- troubleshoot-callsSkill
- update-flowSkill
- verify-webhooksSkill
- web-callsSkill
- write-promptsSkill
The file
Files
Talkif quickstart (orchestration)
Load the named skill for detail at each step; this skill only sequences them.
- Authenticate —
setup-api-key. Result:clientwith a key that hascalls:*,flows:*,flow_templates:*,phones:*,contacts:*. Verify withGET /calls. - Create a flow —
create-flow. Fastest:flowTemplates.instantiateTemplate("customer-support", { name }), thenflows.updateFlow(id, { definition })to setsystemPrompt/agentPrompt(write-prompts). Attach any backend calls (create-flow-function). - Validate and publish —
flows.validateFlow(id)→ fix →flows.publishFlow(id, { notes }). Only a published flow takes calls. - Get a line —
manage-phone-numbers: system provider → search by API → the account Owner buys it in the dashboard (an API key can't buy:403 api_key_not_allowed) → find it withphoneNumbers.listPhoneNumbers. Until the account's first payment, the welcome credit can't pay for a number: the Owner tops up first. - Connect inbound —
phoneNumbers.connectFlow(numberId, { flowId }). Dialing the number now reaches the agent (handle-inbound-calls). - Test —
test-a-flow: place a real call to the user's own phone withcalls.makeCall, or run the draft in the browser with the authenticated SDK. Treat202as success (make-call). - Read results —
read-call-results:getCallDetails,getCallTranscript,getBillingCallCostBreakdown. For live updates,realtime-events. - Scale — a list →
create-campaign(+manage-contacts,do-not-call); one person on a cadence →create-schedule; a web button →web-calls; spend alerts →read-billing. Anything failing →troubleshoot-calls.
Minimal working script (TypeScript):
import { TalkifClient } from "@talkif/sdk";
const client = new TalkifClient({ token: process.env.TALKIF_API_KEY });
const flow = await client.flowTemplates.instantiateTemplate("customer-support", { name: "Support line" });
await client.flows.publishFlow(flow.id, { notes: "initial" });
// Buying a number is dashboard-only (the account Owner); use one the account already has.
const { phoneNumbers } = await client.phoneNumbers.listPhoneNumbers({ limit: 100 });
const number = phoneNumbers.find(n => n.phoneNumber === "+1YOURTALKIFNUMBER")!;
await client.phoneNumbers.connectFlow(number.id, { flowId: flow.id });
const result = await client.calls.makeCall({ flowId: flow.id, fromNumber: number.phoneNumber, providerId: number.providerId, toNumber: "+1YOURPHONE" });
console.log(result.type === "initiated" ? result.callId : `queued #${result.position}`);Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

