Skip to content
NeuralRepo
Get Support

nrepo push

Terminal window
nrepo push <title> [options]

Creates an idea with source: cli. The title is the only required argument.

FlagTypeDefaultDescription
--body <text>string(none)Body text. Markdown is preserved as written.
--tag <tag>string(none)Add a tag. Repeat the flag for multiple tags.
--status <status>stringcapturedOne of captured, exploring, building, shipped, shelved.
--jsonbooleanfalseOutput the created idea as JSON.
--humanbooleanForce human-readable output. Wins over --json.
Terminal window
# Title only
nrepo push "Add dark mode to dashboard"
# With a body, two tags, and a starting status
nrepo push "Rewrite auth flow" \
--body "Switch from session cookies to JWT tokens" \
--tag auth --tag security \
--status exploring
# A multi-line body, quoted
nrepo push "Design notes for v2" --body "$(cat design-notes.md)"
✓ Idea captured
#42 captured ⬡ Rewrite auth flow [auth, security]
Processing: embeddings, dedup, and auto-tagging queued

The row is the CLI’s standard idea line: #number, status padded to ten characters, a glyph for the capture source ( is cli), the title, and tags in brackets. The processing line means the idea is already saved — the embedding, duplicate check, and auto-tagging run afterwards on a queue and take a few seconds.

Terminal window
nrepo push "Rewrite auth flow" --tag auth --json
{
"id": 391,
"number": 42,
"title": "Rewrite auth flow",
"body": null,
"status": "captured",
"source": "cli",
"source_url": null,
"vectorize_id": null,
"tags": ["auth"],
"is_archived": 0,
"created_at": "2026-07-24 10:00:00",
"updated_at": "2026-07-24 10:00:00",
"processing": true
}

Capture the ID for a follow-up command like this:

Terminal window
ID=$(nrepo push "Rewrite auth flow" --json | jq -r '.id')
nrepo tag "$ID" auth security
LimitValueWhat happens past it
Title length200 characters400 with a field error
Body length50,000 characters400 with a field error
Tags per idea20400 with a field error
Tag name length50 characters400 with a field error
Active ideas, free plan50403 — “You’ve captured 50 ideas on the free plan.”

Archiving an idea with nrepo rm frees a slot against the free-plan cap.