# Give your Replit agent its own phone number

- **URL:** https://agentline.cloud/build/replit
- **Runtime:** Replit
- **Keywords:** Replit phone number, Replit Agent voice calling, Replit telephony, phone number for AI agents, AI voice API

Replit already hosts your app and your agent session. AgentLine adds a real US or Canadian number so that agent can place calls, answer inbound voice, and read SMS.

## One skill file

Add the AgentLine skill to your Replit project or Replit Agent session, store AGENTLINE_API_KEY as a Replit Secret, and ask it to provision a number. Webhooks land on your Replit deployment URL.

```
Get yourself a phone number and call me. Follow https://agentline.cloud/skill.md
```

## Why Replit needs its own number

### A number for the workspace

Replit gives the project a URL. AgentLine gives it a phone line: its own E.164 identity, never your personal phone.

### Webhooks that already fit Replit

Inbound transcripts POST to a route on your Replit deployment. No extra telecom worker to host.

### Same skill as every other runtime

skill.md installs the same way as Cursor and Claude Code. No Replit-specific SIP config.

## Python

```python
from agentline import AgentLine

client = AgentLine(api_key="al_live_...")

agent = client.agents.create(
    name="Voice Agent",
    system_prompt="You are a helpful voice agent. Keep spoken turns under 15 words.",
    initial_greeting="Hey, this is your agent. How can I help?",
    voice_id="female-1",
)

number = client.numbers.buy(agent_id=agent.id, country="US", area_code="415")
call = client.calls.create(agent_id=agent.id, to="+14155557890")
print("Number:", number)
print("Call:", call)
```

## Node.js

```ts
import AgentLine from "agentline";

const client = new AgentLine({ apiKey: "al_live_..." });

const agent = await client.agents.create({
  name: "Voice Agent",
  systemPrompt: "You are a helpful voice agent. Keep spoken turns under 15 words.",
  initialGreeting: "Hey, this is your agent. How can I help?",
  voiceId: "female-1",
});

const number = await client.numbers.buy({
  agentId: agent.id,
  country: "US",
  areaCode: "415",
});
const call = await client.calls.create({
  agentId: agent.id,
  to: "+14155557890",
});
console.log("Number:", number);
console.log("Call:", call);
```

## FAQ

**Does AgentLine work with Replit Agent?**

Yes. Install https://agentline.cloud/skill.md, set AGENTLINE_API_KEY as a Replit Secret, create an agent, and buy a number. Your Replit agent can then place and receive calls.

**Where do webhooks go?**

Point them at a public route on your Replit deployment. AgentLine signs every payload so your app can verify it.

**Can a Replit agent receive SMS too?**

Inbound SMS lands as sms.received on the same number. Outbound SMS is not enabled.
