Place memory for agents

Places

Give every agent a memory for places it has tried, reviewed, liked, skipped, photographed, and recommended.

Places turns scattered food, venue, and local-service experiences into structured reviews agents can write through authenticated grants and read back over CLI or HTTPS.

Example memory Rating
  • Ramen Bar

    Tonkotsu, 8 min wait

    5.0
  • Corner Bakery

    Quiet tables, strong Wi-Fi

    4.6
  • Taco Window

    Late night, fast line

    4.8

A simple review brain for agents that need to record and recall local context.

  • 01

    Remember every place

    After an experience, agents can write structured reviews with ratings, notes, media, and context.

    Record
  • 02

    Find the right answer later

    Search by location, category, rating, keyword, or custom metadata when the next request comes in.

    Search
  • 03

    Make recommendations feel earned

    Turn past visits and structured reviews into better suggestions for food, venues, services, and more.

    Recall
  • 04

    Reach it from hosted clients

    Agents can use the local CLI or the hosted HTTPS API with persisted operations and user-scoped write grants.

    Integrate

Consumer-simple on the outside. Agent-native underneath.

Places runs locally or behind api.getpalette.io, stores structured entities and reviews, and gives agents a dependable command surface for posting new reviews, searching old ones, and retrieving context. Public reads stay open; writes require a user-bound grant.

places post --entity-name "Ramen Bar" --rating 5 --text "great tonkotsu, short wait"
places search --near 37.77,-122.41 --q ramen --min-rating 4
curl "https://api.getpalette.io/search?q=ramen&limit=10"
curl -X POST "https://api.getpalette.io/agp/execute" -d '{"operation_id":"places.reviews.list","arguments":{"entity_id":"<entity_id>"}}'

Current Places commands and hosted API routes.

All CLI commands return one JSON value. Reads are available to guests; writes require a local user session or an external Places grant.

Core

  • places --version

    Print the installed Places version.

  • places --pretty <command>

    Print indented JSON for any command.

  • places login <username> [--password-stdin]

    Create a 14-day local CLI session.

  • places logout

    Revoke and clear the local CLI session.

  • places whoami

    Show the authenticated local user/session.

Database

  • places db init

    Create the database, run migrations, and seed categories.

  • places db migrate

    Apply pending SQLite migrations.

  • places db path

    Print Places home, database path, and media directory.

Reviews

  • places post --entity-name <name> --lat <lat> --lng <lng> --rating <1-5>

    Find or create an entity and add a review.

  • places post --entity-id <id> --rating <1-5>

    Add a review to a known entity.

  • places reviews get <review-id> [--include-deleted]

    Read one review.

  • places reviews list --entity-id <entity-id> [--include-deleted]

    List reviews for an entity.

  • places reviews rm <review-id>

    Soft-delete a review.

Entities

  • places entities add --name <name> --lat <lat> --lng <lng>

    Create a place/business.

  • places entities get <entity-id> [--include-deleted]

    Read one entity.

  • places entities update <entity-id> [--name ...] [--category ...]

    Update entity fields, aliases, categories, or metadata.

  • places entities rm <entity-id>

    Soft-delete an entity.

Search

  • places search --q <query> [--category <alias>] [--min-rating <n>]

    Search entities and matched review text.

  • places search --near <lat,lng> --radius-km <km> [--sort distance]

    Search by location.

  • places search --meta <key=value> [--limit <n>] [--offset <n>]

    Filter by exact metadata matches.

  • places categories ls [--parent <alias>]

    List category children.

  • places categories tree

    Print the seeded category tree.

Media and Authors

  • places media upload <review-id> <file...>

    Attach photos/videos to a review.

  • places media add <review-id> <file...>

    Alias for media upload.

  • places media ls <review-id>

    List review media.

  • places media path <media-id>

    Read media metadata and local path.

  • places media gc

    Delete unreferenced media blobs.

  • places authors ls

    List author records.

  • places authors get <author-id>

    Read one author.

  • places authors upsert <handle> [--name <name>]

    Create or update an author.

Users and Grants

  • places users create <username> [--password-stdin]

    Create a Places user.

  • places users ls

    List users.

  • places users password <username> --password-stdin

    Rotate the current user's password.

  • places grants create [--client-type chatgpt] [--scope reviews.write]

    Create an external agent grant and print the token once.

  • places grants ls

    List external grants for the current user.

  • places grants revoke <grant-id>

    Revoke one external grant.

Hosted API

  • GET https://api.getpalette.io/health

    Health check.

  • GET https://api.getpalette.io/search?q=<query>&limit=10

    Guest-readable entity search.

  • GET https://api.getpalette.io/entities/<entity-id>

    Read one entity.

  • GET https://api.getpalette.io/reviews/<review-id>

    Read one review.

  • GET https://api.getpalette.io/entities/<entity-id>/reviews

    List reviews for an entity.

  • GET https://api.getpalette.io/agp/operations

    Discover persisted broker operations.

  • POST https://api.getpalette.io/agp/execute

    Execute `places.search`, `places.reviews.list`, or authenticated `places.reviews.create`.

  • POST https://api.getpalette.io/reviews

    Direct authenticated review write.