Bookmark CLI

The idea

I want a CLI tool to save and find bookmarks. Just URLs with tags. Nothing fancy.

That’s how it starts. Six words of real intent, surrounded by assumptions. Pantion’s job is to find those assumptions and make them explicit.

The dialog (excerpted)

Pantion: You said “just URLs with tags.” Should a bookmark require at least one tag, or can it exist without any?

You: It should have at least one tag. Otherwise I’ll never find it again.

Pantion: When you save a bookmark, should the tool automatically fetch the page title, or do you want to name it yourself?

You: Fetch automatically, but let me override it.

Pantion: You mentioned “find bookmarks.” Should search match tags only, or also the title and URL?

You: Everything. Tags, title, URL.

Pantion: If I search for “python”, should it match partial words? For example, would “python3” or “pythonic” match?

You: Yes, substring matching. Case insensitive.

Pantion: Should tags be free-form text, or should there be a fixed vocabulary of allowed tags?

You: Free-form. I don’t want to manage a tag list.

Pantion: What happens when you save a URL that already exists?

You: Update the tags and title. Don’t create a duplicate.

Pantion: Where should bookmarks be stored?

You: A local file. JSON probably. I want to be able to read it and put it in version control.

Pantion: Should there be an export or import feature?

You: No, the JSON file is the export. That’s the whole point.

What this shows

The original prompt contained ten hidden decisions. Without Pantion, an agent picks defaults for all of them. Some will be wrong, and you won’t notice until the tool doesn’t behave the way you expected.

With Pantion, every decision is surfaced before anything gets built. The result is a spec that any agent can build from — without guessing.