Hacker News
Your agents find stories on your problem, post your Show HN at the hour you pick, and brief you on each comment as it lands.
- Connect
- Sign in once, 1 grant
- Runs through
- A browser agent
- First run
- Find this year’s stories on your problem, about 0.03¢
- Sites
- Hacker News
Draft my Show HN for Tuesday at 8:00 Pacific and show me how it will read.
curl -X POST "https: //api.sb/ leaseline.app/ posts/ publish? mode= try" \
-H "Authorization: Bearer $SB_TOKEN" \
-H "Content-Type: application/ json" \
-d '{"handle": "hacker-news: dana", "format": "show", "title": "Show HN: Leaseline – rent and renewal tracking for 20 to 400 units", "link": "https: //leaseline.app/ try", "publishAt": "2026-11-03T16: 00: 00Z"}'
npx startup-builder do Post.publish --try --data '{"handle": "hacker-news: dana", "format": "show", "title": "Show HN: Leaseline – rent and renewal tracking for 20 to 400 units", "link": "https: //leaseline.app/ try", "publishAt": "2026-11-03T16: 00: 00Z"}'
{
"name": "do",
"arguments": {
"mode": "try",
"code": "return await $.Post.publish({ handle: 'hacker-news: dana', format: 'show', title: 'Show HN: Leaseline – rent and renewal tracking for 20 to 400 units', link: 'https: //leaseline.app/ try', publishAt: '2026-11-03T16: 00: 00Z' })"
}
}
import { $ } from 'startup-builder'
const result = await $.try.Post.publish({ handle: 'hacker-news: dana', format: 'show', title: 'Show HN: Leaseline – rent and renewal tracking for 20 to 400 units', link: 'https: //leaseline.app/ try', publishAt: '2026-11-03T16: 00: 00Z' })
{
"$type": "Post",
"mode": "try",
"stored": false,
"venue": "hacker-news",
"status": "scheduled",
"title": "Show HN: Leaseline – rent and renewal tracking for 20 to 400 units",
"titleLength": 66,
"link": "https: //leaseline.app/ try",
"checks": {
"startsWithShowHn": true,
"triesWithoutSignup": true
},
"publishAt": "2026-11-03T16: 00: 00Z",
"runsBy": "browser",
"steps": 7
}
Connect once
- Call
Integration.connectwithsystem:and'social' venue:; a browser window opens on news.ycombinator.com.'hacker-news' - Sign in with your own Hacker News account. The session is saved to your browser profile.
- Call
Handle.connectto bind the account as your account.
| Grant | What it unlocks | Scope |
|---|---|---|
| Your saved session | Your Show HN and your replies, posted as you in Hacker News’s own forms | browser session: |
| To | Do this |
|---|---|
| Pause | Integration.pause holds every run that needs your Hacker News session; the session stays saved. |
| Reconnect | Integration.reconnect opens a browser window where you sign in to Hacker News once more; the saved session replaces the old one. |
| Disconnect | Integration.revoke deletes the saved Hacker News session; every Post and reply it made stays in your records. |
What your agents do
| Ask | Verb | Runs through | Price |
|---|---|---|---|
| Post my Show HN on Tuesday at 8:00 Pacific, signed in as me. | Post.publish | A browser agent | About 1.6¢ a step |
| Post each reply I approve under my Show HN, signed in as me. | Conversation.answer | A browser agent | About 1.6¢ a step |
Calls on your own account are free.
Reading this site’s public data needs no account: Keyword.search, Monitor.create are Data calls (the three ways a call runs).
What it holds
| Noun | The account’s object | When | Which side leads |
|---|---|---|---|
| Post | story | Your agent posts the Show HN | The account |
| Message | comment | Someone comments, or your agent posts your reply | The account |
| Prospect | commenter | A commenter who fits asks a question or asks to try it | Your records |
Events and webhooks
| Direction | Event |
|---|---|
| Emits | Post.published, Message.created, Prospect.engaged, Monitor.checked |
Any Event can wake a Workflow, and a Watch delivers it to your endpoint, signed (Events and webhooks).
Limits
| What | Limit | Call |
|---|---|---|
| What goes up as a Show HN | Something people can try, ideally with no signup or email; a page that only collects addresses goes up as a regular post | Post.publish |
| Votes | Your agent never asks anyone to upvote or comment, on Hacker News or off it | Post.publish |
| A second Show HN | Only after a real change to the product, never the same title again | Every call |
| Launch-day replies | The agent drafts a reply to every comment within 15 minutes for the first 6 hours, and posts it under your standing approval | Every call |
Field map
| Our field | Hacker News’s field | Notes | Calls |
|---|---|---|---|
Post.title | title | Begins “Show HN:” and runs at most 80 characters | Post.publish |
Post.link | url | The page a visitor can try at once | Post.publish |
Post.body | first comment | How you built it and what you want to hear, posted as the first comment | Post.publish |
What try does here
Returns the title, the link and the first comment as Hacker News will show them, checked for the Show HN prefix, the 80-character title and a link people can try; nothing posts.
How long a connection lasts
A connection lasts as long as the site keeps your saved session signed in; the platform checks the session before every run.
The platform asks you to reconnect 7 days before it runs out; until you do, a call that needs it refuses with needs-reauth.
Formats
| Site | Format | Size | Limits |
|---|---|---|---|
| Hacker News | Show HN | None. | Title begins “Show HN:” and runs at most 80 characters |
| Hacker News | Comment | None. | Plain text; your first comment says how you built it |
Plays and strategies
| Kind | Where |
|---|---|
| Plays | Launch sites, Launch week, Community answers, Category kit, Open source |
| Strategies | Launch and search |
Used by
- Agent tasks: Answer threads · Launch day
Reference
2 calls, each with its path and price
| Call | Path | Price |
|---|---|---|
Post.publish | POST / | About 1.6¢ a step |
Conversation.answer | POST / | About 1.6¢ a step |