Skip to main content

AI-First Personal Knowledge Management CLI

Project description

๐Ÿ  Goldfish CLI

AI-First Personal Knowledge Management from the Command Line

Goldfish CLI is an intelligent command-line tool that helps you capture, organize, and retrieve your thoughts with AI assistance. It uses advanced entity recognition to automatically extract people, projects, and topics from your notes, while providing human-in-the-loop verification to ensure accuracy.

โœจ Features

  • ๐Ÿค– AI-Powered Entity Recognition: Automatically extracts @mentions, #hashtags, and topics
  • ๐Ÿ”— Smart Entity Linking: Prevents duplicates by linking similar entities intelligently
  • ๐Ÿ’ฌ Interactive REPL Mode: Persistent session for seamless thought capture
  • ๐ŸŽฏ Human-in-the-Loop: Verify AI suggestions with create/link/reject/skip options
  • ๐Ÿ“Š Rich Terminal UI: Beautiful tables, panels, and color-coded confidence scores
  • โšก Quick Capture: Natural language processing for rapid note-taking
  • ๐Ÿ” Smart Search: Find entities with fuzzy matching and alias support

๐Ÿš€ Installation

From PyPI (Recommended)

pip install goldfish-cli

From Source

git clone https://github.com/linxichen/goldfish.git
cd goldfish/goldfish-cli
pip install -e .

๐ŸŽฎ Quick Start

Interactive Mode

# Start interactive session
goldfish

# Just type naturally
๐Ÿ  Meeting with @sarah about #project-alpha tomorrow

# AI processes and shows suggestions
๐Ÿค– Analyzing with AI...
๐Ÿ“Š Found 2 entities, 1 task

# Verify suggestions inline
๐Ÿ’พ Save this capture? (Y/n): y

Command Mode

# Quick capture
goldfish capture quick "TODO: Follow up with @john about #ai-research"

# Review AI suggestions
goldfish suggestions pending

# View dashboard
goldfish dashboard status

๐Ÿ“‹ Core Commands

Command Description
goldfish Start interactive REPL mode
goldfish capture quick <text> Quick capture with AI processing
goldfish suggestions pending View pending AI suggestions
goldfish suggestions verify-all Interactive verification workflow
goldfish dashboard status Show overview and statistics
goldfish dashboard entities List all entities
goldfish config setup Initial configuration

๐ŸŽฏ Entity Recognition

Goldfish automatically recognizes:

  • ๐Ÿ‘ฅ People: @sarah โ†’ Links to person entities
  • ๐Ÿ“ Projects: #project-alpha โ†’ Links to project entities
  • ๐Ÿง  Topics: Natural language detection of research topics
  • โœ… Tasks: TODO:, follow up, need to patterns

๐Ÿ”— Smart Entity Linking

When AI suggests entities, you have four options:

  • Create (c): Make new entity from suggestion
  • Link (l): Connect to existing entity (shows candidates with match scores)
  • Reject (r): Mark as incorrect (helps AI learn)
  • Skip (s): Leave for later review
๐Ÿ”— Found existing entities to link to:
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Option โ”‚ Name            โ”‚ Match   โ”‚ Details         โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ 1      โ”‚ Sarah Johnson   โ”‚ 85%     โ”‚ aliases: sarah  โ”‚
โ”‚ 2      โ”‚ Sarah Martinez  โ”‚ 70%     โ”‚ aliases: s.m    โ”‚
โ”‚ 0      โ”‚ Create new      โ”‚ 100%    โ”‚ New entity      โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Select entity to link to (0-2) [0]: 1
๐Ÿ”— Linked to existing entity: Sarah Johnson

๐Ÿ—๏ธ Architecture

Goldfish CLI is built with:

  • Click: Command-line interface framework
  • Rich: Beautiful terminal formatting
  • SQLModel: Database ORM with SQLite storage
  • Prompt Toolkit: Interactive prompts with history
  • Pydantic: Configuration and data validation

๐Ÿ› ๏ธ Development

Setup Development Environment

git clone https://github.com/linxichen/goldfish.git
cd goldfish/goldfish-cli

# Install in development mode
pip install -e ".[dev]"

# Run tests
pytest

# Run linting
ruff check .
black --check .
mypy .

Project Structure

goldfish-cli/
โ”œโ”€โ”€ src/goldfish_cli/          # Main package
โ”‚   โ”œโ”€โ”€ __init__.py
โ”‚   โ”œโ”€โ”€ main.py               # CLI entry point
โ”‚   โ”œโ”€โ”€ commands/             # Command implementations
โ”‚   โ”œโ”€โ”€ core/                 # Core functionality
โ”‚   โ”œโ”€โ”€ models/               # Database models
โ”‚   โ””โ”€โ”€ services/             # Business logic
โ”œโ”€โ”€ tests/                    # Test suite
โ”œโ”€โ”€ docs/                     # Documentation
โ””โ”€โ”€ pyproject.toml           # Package configuration

๐Ÿ“– Documentation

๐Ÿค Contributing

We welcome contributions! Please see our Contributing Guide for details.

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests and documentation
  5. Submit a pull request

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ™ Acknowledgments

Built with modern Python tools and inspired by the best CLI experiences:

  • Click for the CLI framework
  • Rich for beautiful terminal output
  • SQLModel for type-safe database operations

๐Ÿ  Homepage โ€ข ๐Ÿ“š Documentation โ€ข ๐Ÿ› Report Bug โ€ข ๐Ÿ’ก Request Feature

Made with โค๏ธ for knowledge workers everywhere

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

goldfish_cli-0.1.4.tar.gz (37.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

goldfish_cli-0.1.4-py3-none-any.whl (24.3 kB view details)

Uploaded Python 3

File details

Details for the file goldfish_cli-0.1.4.tar.gz.

File metadata

  • Download URL: goldfish_cli-0.1.4.tar.gz
  • Upload date:
  • Size: 37.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for goldfish_cli-0.1.4.tar.gz
Algorithm Hash digest
SHA256 f2889aaed49d1a325c4e9885bc3553b7183601a20dfccd203bf6c5502bcb2612
MD5 263af2a44ad361f52870a7b6708f1a79
BLAKE2b-256 444a62c6d5aba4d84d2eff7115b2f76881a1ce21455acae726bba35126e8bd5c

See more details on using hashes here.

Provenance

The following attestation bundles were made for goldfish_cli-0.1.4.tar.gz:

Publisher: publish-goldfish-cli.yml on linxichen/goldfish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file goldfish_cli-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: goldfish_cli-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 24.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for goldfish_cli-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 6fb954b180aba381f5c460142d98654ab205e8d13b9ef17f4bae01fd9e9c16f9
MD5 4332a3d588437a968218663a8526421f
BLAKE2b-256 17bdb0b6e54823b806bfd19cf53bb12b298067aa047523fff9ec6df0c789a0f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for goldfish_cli-0.1.4-py3-none-any.whl:

Publisher: publish-goldfish-cli.yml on linxichen/goldfish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page