Lightweight prompt and command checklist for validating the docs and help surface against realistic agent tasks.
- "Bugün namaz vakitleri Istanbul"
- "Ezana kaç dakika kaldı?"
- "How long until the next prayer in Istanbul?"
- "İftara kaç saniye kaldı?"
- "Yalnızca yatsı vaktini ver"
- "Use these coordinates and return today's full schedule"
- "Istnbul için doğru şehri bul"
- "Springfield belirsiz, seçenekleri göster"
- "Run the countdown from a fixed RFC3339 timestamp"
- "Return JSON and preserve the exit code on ambiguous input"
- Structured output is discoverable:
--jsonis visible in help and returns JSON onstdout--quietis visible on scalar-capable commands and emits a single bare value--output text|json|valueremains available for wrappers that want one explicit switch
- Errors are automation-friendly:
- human-readable errors go to
stderr --jsonreturns structured error payloads onstdout- exit codes stay stable and documented
- human-readable errors go to
- Commands are safe and predictable:
- MVP 1 is stateless and read-only, so query operations are naturally idempotent
- no destructive commands exist, so
--dry-runand--yesare intentionally not applicable in this version
- Help is self-documenting:
--helpmust expose examples for--json,--quiet, field selection, and deterministic countdown replay
- Composability is covered:
--fieldplus--quietor--output valuesupports scalar pipelines- countdown scalar defaults resolve to
minutes_remainingwhen no--fieldis provided - full JSON payloads stay stable for agent parsing
Use the compiled binary for exit-code checks:
go build -o ./bin/prayertime-cli ./cmd/prayertime-cliRun these checks:
./bin/prayertime-cli locations search --query Istnbul --json
./bin/prayertime-cli locations search --query Springfield --country-code US --limit 3 --json
./bin/prayertime-cli times get --query Istanbul --json
./bin/prayertime-cli times get --query Ankara --country-code TR --field yatsi --quiet
./bin/prayertime-cli times get --lat 41.01384 --lon 28.94966 --date today --json
./bin/prayertime-cli times countdown --query Istanbul --target next-prayer --json
./bin/prayertime-cli times countdown --query Istanbul --target iftar --quiet
./bin/prayertime-cli times countdown --query Istanbul --target next-prayer --at 2026-03-07T18:00:00+03:00 --json
./bin/prayertime-cli times countdown --jsonConfirm:
- task-first docs point to the same commands shown in
--help next-prayeris the generic countdown pathiftarworks as a supported alias, not the default framing for all countdowns--quietreturns scalar-only outputtimes countdown --quietand bare--output valuedefault tominutes_remaining--jsonreturns structured payloads and JSON error objects--output jsonand--output valueremain equivalent to the shortcut flags- missing location input returns exit code
2 - not-found or ambiguous input returns exit code
3