Commit graph

123 commits

Author SHA1 Message Date
Bob Roberts
844762f187 feat: Add Knowledge Lifecycle Engine and fix upload_document MCP tool
Add KB lifecycle management system with deduplication, consolidation,
archival, and health analytics. Also fix pre-existing routing bug in
upload_document MCP tool (was hitting /import instead of new /documents/content).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 10:08:00 -06:00
Bob Roberts
90de2e32e4 feat: Consolidate memory skills & punch up README
Memory Skill:
- Merged remember-this into unified memory skill
- Now uses Claude OS KBs (not separate memory MCP)
- Supports natural language: "remember this:", "save to memory:", etc.
- Deleted redundant remember-this skill

README:
- New tagline: "Give Your AI a Memory"
- Added "The Magic" section showing natural language UX
- Rewrote "What is Claude OS" with before/after comparison
- Added killer line: "Claude is a tool → Claude is a partner"
- Compact features table replacing wall of checkmarks

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-02 16:04:43 -06:00
Bob Roberts
b3f9123c5b
Merge pull request #23 from gurdasnijor/smithery/add-badge
Add "Run in Smithery" badge
2025-12-18 15:20:39 -06:00
Bob Roberts
753d427896 fix: Configure MCP server per-project via claude mcp add
Claude Code stores MCP configs in ~/.claude.json per-project, NOT in
~/.claude/settings.json. The previous approach of writing to settings.json
didn't work - projects showed "No MCP servers configured".

Changes:
- Remove broken MCP setup from setup-claude-os.sh (was writing to wrong file)
- Add Step 2.5 to /claude-os-init that runs `claude mcp add` for each project
- Update final summary to remind users to restart Claude Code after init

Now the workflow is:
1. ./setup-claude-os.sh - Install Claude OS once
2. /claude-os-init - Run in each project (creates KBs + configures MCP)
3. Restart Claude Code - MCP connects
4. mcp__code-forge__* tools available!

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-17 18:16:19 -06:00
Gurdas Nijor
19332033db Add Smithery badge 2025-12-16 11:39:08 -08:00
Bob Roberts
c45c2e87a5 Fixed the auto sync file watcher and updated setup script to make agent-os default install false 2025-12-12 14:37:45 -06:00
Bob Roberts
212dda1ce1 session extractor fix 2025-12-11 19:49:53 -06:00
Bob Roberts
d4a9b8b62d Add wiki badge and link to Recommended Skills 2025-12-11 19:49:24 -06:00
Bob Roberts
a1820ebdf0 Adding more tests to improve test coverage 2025-12-11 14:07:58 -06:00
Bob Roberts
2af8381476 fix: Update Getting Started to use setup-claude-os.sh
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 12:59:33 -06:00
Bob Roberts
a744080e65 feat: Add Skills Library and Session Insights (v2.3)
## Skills Library
- Browse and install 36+ community skills from Anthropic & Superpowers
- Local skill templates (Rails, React, testing)
- Create custom project-specific skills
- Beautiful UI with search and filtering
- /claude-os-skills command for CLI management

## Session Insights
- Parse Claude Code native .jsonl session files
- Extract patterns, decisions, blockers automatically
- Track tool usage and file changes
- Session summary generation for LLM processing

## Documentation
- Updated README with v2.3 features
- Updated API_REFERENCE with new endpoints
- Added SKILLS_GUIDE.md and SESSIONS_GUIDE.md
- Updated GitHub Pages (docs/index.html)
- Reorganized docs (internal_docs for private)

## Bug Fixes
- Fixed httpx client closure in community skill install
- Fixed frontend request format for skill install

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 12:56:49 -06:00
Bob Roberts
8908f2b03b Working on adding the linux setup 2025-12-09 17:43:16 -06:00
Bob Roberts
6562d3615b Add Discord announcement and update community contributions
- Add Discord badge and invite link at top of README
- Add 5 new PRs from @illAssad (#18-#22) to contributions table

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-09 16:39:51 -06:00
Bob Roberts
0764d37b74
Merge pull request #21 from illAssad/fix/skip-node-modules
fix: Skip node_modules and common build directories during ingestion
2025-12-09 16:34:36 -06:00
Bob Roberts
a6a3913bfc
Merge pull request #22 from illAssad/fix/delete-document-endpoint
fix: Fix delete document endpoint SQLite cursor handling
2025-12-09 16:34:22 -06:00
Illya
f6320faa9c fix: Fix delete document endpoint SQLite cursor handling
- Replace context manager pattern with direct cursor assignment
  (SQLite cursors don't support context manager protocol)
- Use conn.close() instead of db_manager.return_connection()
  (SQLiteManager doesn't have return_connection method)

Fixes 500 error when deleting documents via REST API.
2025-12-08 23:54:49 -05:00
Illya
e63466845f fix: Skip node_modules and common build directories during ingestion
The ingest_directory function was recursively indexing ALL files including
node_modules, which caused:
- Massive index bloat (thousands of irrelevant library files)
- Polluted search results with third-party code
- Very slow indexing times

Added SKIP_DIRECTORIES set with common directories to exclude:
- Package managers: node_modules, vendor, Pods
- Build outputs: dist, build, target, .next, .nuxt
- VCS: .git, .svn, .hg
- Caches: __pycache__, .pytest_cache, .mypy_cache, .cache
- IDE: .vscode, .idea
- Our own: .claude-os

Also added should_skip_path() helper function with wildcard support
for patterns like *.egg-info.
2025-12-08 23:33:33 -05:00
Bob Roberts
046f18949c
Merge pull request #19 from illAssad/feat/background-indexing-jobs-ui
Add non-blocking semantic indexing with Jobs Dashboard UI
2025-12-08 21:57:23 -06:00
Bob Roberts
90297ca4db
Merge pull request #20 from illAssad/fix/tree-sitter-version-compatibility
Fix tree-sitter version compatibility with tree-sitter-languages
2025-12-08 21:49:52 -06:00
Bob Roberts
2b80837f7c
Merge pull request #18 from illAssad/fix/frontend-npm-install
Fix frontend startup by auto-installing npm dependencies
2025-12-08 21:47:01 -06:00
Illya
64a8807f33 Fix tree-sitter version compatibility with tree-sitter-languages
Pin tree-sitter to 0.20.x because tree-sitter-languages 1.10.x is
incompatible with tree-sitter 0.21+. The 0.21+ API changed Parser()
and Language() constructors, causing '__init__() takes exactly 1
argument (2 given)' errors on all file parsing operations.

This fix restores selective indexing functionality which relies on
TreeSitter for code parsing and symbol extraction.
2025-12-08 20:26:20 -05:00
Illya
51e0702d94 Add non-blocking semantic indexing with Jobs Dashboard UI
- Fix server blocking issue during semantic indexing by using FastAPI BackgroundTasks
- Add job progress tracking with real-time status updates
- Add /api/jobs and /api/jobs/{job_id} endpoints for monitoring
- Add JobsDashboard component with live progress bars and status indicators
- Add Jobs tab to MainApp for interactive monitoring
- Maintain backward compatibility with background=false option for sync mode
- Include automatic job cleanup to prevent memory leaks
2025-12-08 17:19:15 -05:00
Illya
a77c439015 Fix frontend startup by auto-installing npm dependencies
The start script was running `npm run dev` without checking if
node_modules existed, causing "vite: command not found" errors
for new users who hadn't manually run npm install.

Now checks for node_modules and runs npm install automatically
if dependencies are missing.
2025-12-08 16:40:53 -05:00
Bob Roberts
3a5d7dee81 Update README with v2.2 features and community contributions
Documentation updates:
- Add "What's New in v2.2" section highlighting:
  - Gum CLI support for beautiful interactive installer
  - Safety features (--demo, --dry-run, auto-backup)
  - Lite model default (llama3.2:3b)
  - Cloud provider option (OpenAI)
- Add "Community Contributions" section thanking:
  - @williamclavier, @jplimack, @gkastanis, @nicseltzer
- Update installation section for setup-claude-os.sh
- Update Scripts Guide with new unified installer
- Update environment variables with new defaults and OpenAI options
- Note legacy script redirects

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-05 21:38:46 -06:00
Bob Roberts
75162ce596 Add safety features: --demo, --dry-run, and automatic backups
New command line options:
- --demo: Interactive demo mode (no changes made)
- --dry-run: Preview what would be done without doing it
- --help/-h: Show usage information
- --version/-v: Show version number
- --force/-f: Skip confirmation prompts

Safety improvements:
- Automatic backup of .env and config.json before overwriting
- Backups saved as filename.backup.YYYYMMDD_HHMMSS
- Dry-run shows all actions that would be taken
- Demo mode lets users see the beautiful UI safely

Version bumped to 2.2.0

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-05 21:31:33 -06:00
Bob Roberts
8e2c4cc1d0 Add Charm CLI (gum) support for premium installer experience
- Detect gum and offer to install for enhanced UX
- Add wrapper functions with graceful bash fallback:
  - gum_choose: Interactive option selection
  - gum_confirm: Yes/no prompts
  - gum_input: Text input
  - gum_password: Hidden input
  - gum_spin: Animated spinners
  - gum_style_box: Styled boxes
- Works perfectly without gum, beautiful with it
- Supports macOS (Homebrew), Debian/Ubuntu (apt), and Go install

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-05 21:04:45 -06:00
Bob Roberts
e98ecbcf14 Add beautiful unified installer with Local/Cloud support
✨ New Features:
- Beautiful CLI installer (setup-claude-os.sh) with ASCII art,
  progress bars, spinners, and styled prompts
- Choose between Local (Ollama) or Cloud (OpenAI) providers
- Lite model (llama3.2:3b) as default - faster download, works on more machines
- Full model (llama3.1:8b) option for users who want better quality
- OpenAI API support for users who prefer cloud

🔧 Changes:
- setup.sh and install.sh now redirect to setup-claude-os.sh
- config.py updated with provider support and new defaults
- Works on both macOS and Linux

📦 Default Model Change:
- Before: llama3.1:latest (8B, 4.7GB download)
- After: llama3.2:3b (3B, 2GB download)

This makes Claude OS accessible to more users with smaller machines
while still offering the full experience for power users.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-05 20:53:20 -06:00
Bob Roberts
61a9ad8f00 Add MCP server, tests, and updated docs
- CLAUDE.md: Added identity, session management, full documentation
  - install.sh: Auto-configures settings.json for users
  - claude_code_mcp.py: True MCP server with stdio transport (15 tools)
  - test_mcp_server.py: 15 tests covering tools, API, errors

  366 tests passing. Ready for the 100 stars
2025-12-05 20:29:51 -06:00
Bob Roberts
c9d7b61cf2
Merge pull request #17 from williamclavier/fix/install-subdirectories
Fix: Ensure commands and skills directories exist during install
2025-12-03 14:30:23 -06:00
William Clavier
1683592ee4 Fix: Ensure commands and skills directories exist during install
Previously, if ~/.claude already existed from a prior Claude Code
installation, the install script would skip creating the commands/
and skills/ subdirectories. This caused symlink creation to fail
silently, leaving users without access to /claude-os-init and other
commands.

This fix ensures the subdirectories are always created, regardless
of whether ~/.claude already exists.

Fixes issue where /claude-os-init command was not available after
running install.sh on systems with existing ~/.claude directory.
2025-12-03 13:50:13 -05:00
Bob Roberts
6c51d807a6 Remove test screenshots from tracking 2025-12-02 16:28:24 -06:00
Bob Roberts
b5246a0ab2 Clean up repo: remove internal docs, fix issues, add features
- Remove internal docs from git tracking (still in .gitignore)
- Clean Tuffy/Pistn references from public documentation
- Add uninstall.sh script with README documentation
- Fix Configure modal overlay bug (issue #14)
- Add Playwright e2e testing setup
- Remove state/config files from tracking

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 16:27:58 -06:00
Bob Roberts
295a95d4ae [Bug] "Configure" window superimposed on underlying UI elements #14 2025-12-02 16:10:07 -06:00
Bob Roberts
559205e7c0 Added uninstall script 2025-12-02 15:36:12 -06:00
Bob Roberts
8e696f0323 Code cleanup still and all tests passing now 2025-12-02 15:28:25 -06:00
Bob Roberts
9e1f9c4074
Merge pull request #11 from gkastanis/feature/linux-support
Add Linux support for installation scripts
2025-12-02 14:48:00 -06:00
Bob Roberts
73278c90e8
Merge pull request #10 from nicseltzer/main
[readme][link]: Broken link to 'buildermethods'
2025-12-02 14:47:24 -06:00
Bob Roberts
a7b7c4e51c
Merge pull request #12 from gkastanis/fix/missing-frontend-lib-files
Add missing frontend lib files
2025-12-02 14:44:55 -06:00
Bob Roberts
f45f2f0c6a Major cleanup that should have done before announcing this app!!! 2025-12-02 14:35:15 -06:00
Bob Roberts
033a36987a
Merge pull request #16 from jplimack/fix/issue-9-hardcoded-paths
Fix hardcoded /Users/iamanmp/ paths - make paths dynamic
2025-12-02 14:13:55 -06:00
Jake Plimack
57db9d1c41 Fix hardcoded /Users/iamanmp/ paths - make paths dynamic
Resolves #9

Replace hardcoded user paths with dynamic path discovery:
- Markdown templates: derive path from command file's own location
- Shell scripts: use BASH_SOURCE and dirname
- Python files: use Path(__file__).resolve()
- Frontend: remove hardcoded defaults
2025-12-02 11:18:38 -07:00
gkastanis
dd711a7d96 Add missing frontend lib files
Fixes #7

- Add frontend/src/lib/auth.tsx with AuthProvider and useAuth hook
- Add frontend/src/lib/api.ts with chat, getKBStats, listDocuments, etc.
- Add frontend/src/lib/filePicker.ts with path utilities
- Update .gitignore to not ignore frontend/src/lib/

These files were imported but never committed, preventing fresh
installations from building the frontend.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 14:23:47 +02:00
gkastanis
ff8c778918 Add Linux support for installation scripts
- Add OS and package manager detection (apt, dnf, yum, pacman)
- Skip installation if Ollama/Redis already installed
- Use direct daemon execution instead of sudo for service start
- Update help messages with Linux package manager instructions
- Update README to reflect Linux support

Tested on Ubuntu with apt and systemctl.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 14:12:58 +02:00
nic seltzer
442ff23e1f [readme][link]: Broken link to 'buildermethods' 2025-12-01 16:52:09 -08:00
Bob Roberts
bfea71709f Cleaned up some references to other applications 2025-11-07 15:48:34 -06:00
Bob Roberts
e311ea344c working on servicebot integration 2025-11-06 21:54:49 -06:00
Bob Roberts
43ad8605fe Remove MCP-only deployment - using export approach instead
Removed deployment/mcp-only/* because it conflicts with our export-based
architecture for ServiceBot integration.

Why removed:
- MCP-only requires Claude OS MCP server running in production
- Export approach is simpler: SQLite file → ServiceBot (standalone)
- No runtime dependency on Claude OS
- Better aligns with "ServiceBot is standalone" design goal

What we're keeping (export approach):
- app/core/knowledge_exporter.py
- templates/commands/claude-os-export.md
- docs/EXPORT_FORMAT_SPEC.md
- docs/CLAUDE_OS_FAMILY.md
- docs/PISTN_API_INTEGRATION_PLAN.md
- docs/VECTOR_SEARCH_OPTIMIZATION.md

ServiceBot integration is export-based:
Claude OS → Export SQLite → ServiceBot reads directly (no API calls)
2025-11-06 20:30:19 -06:00
Bob Roberts
ea779fba43 Merge branch 'main' of https://github.com/brobertsaz/claude-os 2025-11-06 20:25:59 -06:00
Bob Roberts
ada9fd80fa Working on export for servicebot 2025-11-06 20:25:42 -06:00
Bob Roberts
1fe2526b16
Merge pull request #5 from brobertsaz/claude/claude-os-awesome-features-011CUq9Pb7GbRGnL7b1oxnNF
Explore Claude OS capabilities and features
2025-11-05 12:05:01 -06:00