PREREQUISITE: Read deepvista-shared for auth, profiles, and global flags.
Cards are DeepVista's knowledge base — context cards representing people, organizations, topics, notes, files, and more. Cards have vector embeddings for semantic search and keyword indexing for precise lookups.
Command: deepvista card <subcommand>
After any write operation (create, update), always show the card URL to the user:
text
https://app.deepvista.ai/vistabase?contextId=<id>
Extract the id from the JSON response and present it as a clickable link.
bash
deepvista card list [--type TYPE] [--status STATUS] [--limit N] [--page N] [--order-by FIELD] [--order DIR]
FlagRequiredDefaultDescription--typeNoallCard type filter--statusNoallpinned, archived, or normal``--limitNo20Max results--pageNo1Page number--order-byNo—created_at or updated_at``--orderNo—asc or desc
bash
deepvista card get <card_id>
bash
deepvista card create --type TYPE --title "Title" [--content "Description"] [--tags '["t1","t2"]'] [--no-enrich]
[!CAUTION] Write command — confirm with user before executing.
bash
deepvista card update <card_id> [--title "..."] [--content "..."] [--type TYPE] [--tags '["t1"]'] [--status pinned|archived]
[!CAUTION] Write command — confirm with user before executing.
bash
deepvista card edit <card_id> --old-string "text to find" --new-string "replacement" [--replace-all]
Targeted string replacement in a card's content — like Claude Code's Edit tool. Finds old_string in the card description and replaces it with new_string. By default, old_string must appear exactly once (provide more surrounding context to disambiguate).
FlagRequiredDefaultDescription<card_id>Yes—Card to edit--old-stringYes—Exact text to find--new-stringYes—Replacement text--replace-allNofalseReplace all occurrences
[!CAUTION] Write command — confirm with user before executing.
bash
deepvista card delete <card_id> [--type TYPE]
[!CAUTION] Destructive command — confirm with user before executing.
bash
deepvista card +search "query text" [--type TYPE] [--limit N]
Search across all context cards using hybrid vector + keyword search.
FlagRequiredDefaultDescription<query>Yes—Search query (natural language)--typeNoallFilter by card type--limitNo10Max results
Read-only. Use card get <id> to read the full content of a result.
bash
deepvista card +similar <card_id> [--limit N]
Find context cards semantically similar to a given card.
Read-only. The source card is excluded from results.
bash
deepvista card +pin <card_id>
[!CAUTION] Write command.
bash
deepvista card +archive <card_id>
[!CAUTION] Write command.
bash
deepvista card +grep "pattern" [--type TYPE] [-i] [--limit N] [-C N]
Regex search through card content. Returns matching lines with line numbers — like grep or ripgrep. Different from +search (semantic/keyword): this does literal/regex matching on card content.
FlagRequiredDefaultDescription<pattern>Yes—Regex pattern to search for--typeNoallFilter by card type-i / --ignore-caseNofalseCase-insensitive matching--limitNo20Max cards to return-C / --contextNo0Lines of context around each match
Read-only. Use card get <id> to read the full content of a result.
person, organization, message, todo, topic, keypoint, file, note, recipe, recipe_run
bash
# Search for anything about quarterly metrics
deepvista card +search "quarterly metrics"
# Find people related to a topic
deepvista card +search "machine learning team" --type person
# Grep for a specific pattern in card content
deepvista card +grep "TODO|FIXME" --type note -i
# Grep with context lines
deepvista card +grep "API endpoint" -C 2
# List all notes
deepvista card list --type note
# Create a topic card
deepvista card create --type topic --title "Machine Learning Strategy" --content "Our approach to ML..."
# Edit a card's content (targeted replacement)
deepvista card edit abc123 --old-string "old API URL" --new-string "new API URL"
# Pin an important card
deepvista card +pin abc123
# Get full details of a card
deepvista card get abc123