interodreams
v0.1.0
Published
Command-line access to the Intero Dreams dream-symbol library and dream interpreter.
Maintainers
Readme
interodreams
Command-line access to the Intero Dreams dream-symbol library and dream interpreter.
No API key. No account. No dependencies.
npx interodreams symbol snake
npx interodreams interpret "I was flying over a city at night"Or install it:
npm install -g interodreamsCommands
| Command | What it does |
| --- | --- |
| interodreams symbol <name> | What a symbol means. snake, "Broken Teeth", or a full URL. |
| interodreams interpret <text> | Interpret a dream. Reads stdin if the text is omitted. |
| interodreams symbols | Every published symbol. |
| interodreams themes | Symbols grouped by emotional pattern. |
| interodreams categories | Symbols grouped by kind. |
| interodreams api | The service index: endpoints, limits, error format. |
Options
| Option | |
| --- | --- |
| --json | Machine-readable output. Valid JSON on success and on failure. |
| --perspective <lens> | Modern (default), Freudian, Jungian, Universal. |
| --mood <mood> | Mood to interpret against. Default Neutral. |
| --recurring | Mark the dream as recurring. |
| --lucid | Mark the dream as lucid. |
| --base-url <url> | Point at a different deployment. |
| --quiet | Suppress the rate-limit note. |
For scripts and agents
--json always emits one JSON object, including when the request fails, so a
caller never has to parse English to find out what happened:
$ interodreams symbol not-a-real-symbol --json
{
"ok": false,
"code": "not_found",
"message": "No such page.",
"hint": "Check the name against `interodreams symbols`. Retrying will not help.",
"status": 404,
"retryable": false,
"retryAfterSeconds": null
}retryable is the field to branch on. It is false for anything that will fail
identically no matter how long you wait — a bad slug, a body that does not
validate, text that is not a dream.
Exit codes:
| Code | Meaning |
| --- | --- |
| 0 | Success |
| 2 | Usage error — bad flag, missing argument |
| 3 | The API refused the request |
| 4 | Rate limited (Retry-After is in the JSON) |
| 5 | Could not reach the host |
The rate-limit note goes to stderr, so interodreams symbol owl > owl.md
writes only the document.
Rate limits
Reading content is limited generously. Interpretation is 1 per UTC day for anonymous callers and 10 per 24h for signed-in accounts — this CLI is anonymous, so it gets the former.
Every response carries RateLimit-Remaining and RateLimit-Reset; the CLI
surfaces them when the allowance runs low, and a 429 carries Retry-After.
Use as a library
import { InteroDreams } from "interodreams";
const client = new InteroDreams();
const markdown = await client.symbol("owl");
console.log(client.lastRateLimit); // { limit, remaining, resetSeconds, policy }What this is not
Intero Dreams is not a medical or psychiatric service. Interpretations are for reflection and education. If a dream is connected to distress, a sleep disorder, or a crisis, talk to a qualified clinician.
Links
MIT licensed.
