{"id":44379830,"url":"https://github.com/seapagan/cogitus","last_synced_at":"2026-02-14T00:01:17.367Z","repository":{"id":337032029,"uuid":"1152098871","full_name":"seapagan/cogitus","owner":"seapagan","description":"Cogitus — a fast, searchable terminal workspace for capturing and evolving programming ideas.","archived":false,"fork":false,"pushed_at":"2026-02-12T19:34:11.000Z","size":992,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-13T04:47:44.071Z","etag":null,"topics":["cli","idea-management","knowledge-base","python","sqlite","textual","tui"],"latest_commit_sha":null,"homepage":"https://cogitus.grantramsay.dev/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/seapagan.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-07T11:10:55.000Z","updated_at":"2026-02-12T16:43:42.000Z","dependencies_parsed_at":"2026-02-12T23:01:03.160Z","dependency_job_id":null,"html_url":"https://github.com/seapagan/cogitus","commit_stats":null,"previous_names":["seapagan/cogitus"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/seapagan/cogitus","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seapagan%2Fcogitus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seapagan%2Fcogitus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seapagan%2Fcogitus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seapagan%2Fcogitus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/seapagan","download_url":"https://codeload.github.com/seapagan/cogitus/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seapagan%2Fcogitus/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29424535,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-13T22:20:51.549Z","status":"ssl_error","status_checked_at":"2026-02-13T22:20:49.838Z","response_time":78,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","idea-management","knowledge-base","python","sqlite","textual","tui"],"created_at":"2026-02-11T22:21:18.556Z","updated_at":"2026-02-14T00:01:17.081Z","avatar_url":"https://github.com/seapagan.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Cogitus\n\n\u003e [!NOTE]\n\u003e\n\u003e Cogitus is currently in MVP/alpha stage. Core workflows are available, and\n\u003e interfaces may continue to evolve in subsequent releases.\n\n**Cogitus — a fast, searchable terminal workspace for capturing and evolving\nprogramming ideas.**\n\nCogitus is a Python-based TUI (Terminal User Interface) built with Textual. It\nis designed specifically for developers who want a structured, keyboard-driven\nway to capture, explore, and refine programming ideas without leaving the\nterminal. This is not a generic note-taking app and not a task manager. Cogitus\nis focused on structured idea capture, iteration, and discovery.\n\n---\n\n## Goals\n\n- Fast, local-first idea capture\n- Fully keyboard-driven workflow\n- Searchable and structured storage\n- Minimal, distraction-free UI\n- Designed specifically for programming and technical concepts\n\n---\n\n## Core Concepts\n\nCogitus treats ideas as structured entities rather than loose notes. Each idea\ncan include:\n\n- Title\n- Body/description (Markdown-friendly text - edit in markdown, display rendered\n  using `Textual`/`Rich` native functionality)\n- Tags\n- Group (ideas are organized under groups in the left tree view)\n- Timestamps (created/updated)\n\nFuture versions may introduce:\n\n- Idea linking (relationships between ideas)\n- Graph views\n- Scoring or priority signals\n- SQLite FTS5-powered full-text search\n- AI-assisted idea expansion\n\n---\n\n## Architecture\n\n- UI: Built with Textual\n- Database: SQLite (local file, WAL mode)\n- Data Access: `sqliter-py`\n- Package Management: `uv` (not pip)\n\nThe project intentionally separates:\n\n- Textual UI layer (screens and widgets)\n- Repository/service layer for database access\n- Schema and migration management\n\nCogitus is also a real-world validation project for `sqliter-py`.\n\n---\n\n## Current Functionality\n\nFunctionality available in the current MVP includes:\n\n- Create new ideas\n- Edit existing ideas\n- List ideas in a grouped tree view\n- Arrange ideas into groups (with bulk idea move to the default group on group\n  delete)\n- Tag ideas\n- Basic search (SQLite `LIKE`)\n- View idea details\n- Copy \u0026 Paste support\n\nSearch will initially be simple but structured to evolve into FTS5.\n\n\u003e [!NOTE]\n\u003e\n\u003e items in **bold** are in the current HEAD but not yet in the pypi release.\n\u003e They will be included in the next release, but you can always install from the\n\u003e repo to get the latest features.\n\n---\n\n## Target Users\n\n- Solo developers\n- Indie hackers\n- Open-source maintainers\n- Engineers who think in terminals\n\nIf you sketch ideas in README files, TODO lists, or scattered Markdown files\nacross projects, Cogitus aims to centralize that thinking into a structured,\nsearchable workspace.\n\n---\n\n## Installation\n\nThe recommended way to install this is as a global tool, either using `uv`\n(best) or `pipx`:\n\n```bash\nuv tool install cogitus\n```\n\nYou can always install globally using `pip` if you don't want to use any of\nthose 2 tools:\n\n```bash\npip install cogitus\n```\n\n## Usage\n\n```bash\ncogitus\n```\n\n## Key Shortcuts (Main Screen)\n\n- `n`: New idea\n- `e`: Edit selected idea\n- `d`: Delete selected idea\n- `g`: New group\n- `Shift+G`: Delete selected group\n- `/`: Focus search\n- `y`: Copy selected idea body\n- `?`: Show help\n- `q`: Quit\n\n---\n\n## Clipboard Support\n\nCogitus uses two clipboard strategies for maximum compatibility:\n\n- **OSC 52** (primary) — works in most modern terminals (Ghostty, iTerm2, Kitty,\n  Alacritty, WezTerm, Windows Terminal) and through tmux/SSH\n- **pyperclip** (fallback) — uses system tools like `xclip`, `xsel`, or\n  `pbcopy` for terminals that don't support OSC 52 (e.g. Gnome Terminal, macOS\n  Terminal)\n\n**tmux users:** You need `set-clipboard` enabled in your `~/.tmux.conf` for\nOSC 52 to pass through:\n\n```tmux\nset -g set-clipboard on\n```\n\n**Linux users without OSC 52 support:** Install `xclip` or `xsel` for the\npyperclip fallback to work:\n\n```bash\nsudo apt-get install xclip   # Debian/Ubuntu\nsudo pacman -S xclip          # Arch\nsudo dnf install xclip        # Fedora\n```\n\n**`y` copy is context-sensitive:** In the editor, `y` copies the current\nselection. In rendered Markdown view, `y` copies selected text when detected;\notherwise it copies the full idea body. In some terminals/cases, Textual may\nnot detect rendered-view selection and will fall back to full-body copy.\n\n---\n\n## Development\n\nThis project uses:\n\n- `uv` for dependency and environment management\n- SQLite for local storage\n- Textual for UI\n- Standard formatting and linting tools defined in the repository\n\n---\n\n## License\n\nCogitus is licensed under the MIT License. See [`LICENSE.txt`](LICENSE.txt).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseapagan%2Fcogitus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fseapagan%2Fcogitus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseapagan%2Fcogitus/lists"}