20 Commits

Author SHA1 Message Date
opencode
a681cf3ca8 Merge pull request #16: fix: add requests.Session with SSL verification control (closes #6) 2026-07-05 07:13:57 +00:00
jarianc
29bec257fa Merge branch 'main' into fix/issue-6 2026-07-05 02:09:48 -05:00
jarianc
0fff7aaf42 Merge pull request 'fix: remove hardcoded LAN IP from default base_url (closes #5)' (#15) from fix/issue-5 into main
Reviewed-on: https://git.home.ms/jarianc/Clover/pulls/15
2026-07-05 02:09:19 -05:00
jarianc
7d66ec7e6c Merge branch 'main' into fix/issue-5 2026-07-05 02:08:51 -05:00
jarianc
868626c23c Merge pull request 'fix: prevent path traversal in file operations (closes #2, #4)' (#14) from fix/issue-2 into main
Reviewed-on: https://git.home.ms/jarianc/Clover/pulls/14
2026-07-05 02:08:05 -05:00
jarianc
f9644168da Merge branch 'main' into fix/issue-2 2026-07-05 02:07:13 -05:00
jarianc
560759b718 Merge pull request 'fix: prevent command injection via shell=True (closes #1, #3)' (#13) from fix/issue-1 into main
Reviewed-on: https://git.home.ms/jarianc/Clover/pulls/13
2026-07-05 02:06:50 -05:00
opencode
72e164f6a9 fix: add requests.Session with SSL verification control (issue #6)
- Use requests.Session for connection pooling and consistent headers
- Add CLOVER_SSL_VERIFY config option (default: true)
- Warn on non-TLS connections to non-localhost endpoints
- SSL verification can be disabled for self-signed certs
2026-07-05 07:02:15 +00:00
opencode
1207f2c9cf fix: remove hardcoded LAN IP from default base_url (issue #5)
- Replace hardcoded 192.168.8.223:11434 with error placeholder
- Fail loudly if CLOVER_BASE_URL not set in .env
- Add helpful error message in validate_config()
2026-07-05 07:01:34 +00:00
opencode
7680fea98e fix: prevent path traversal in file operations (issue #2, #4)
- Add _validate_path() using os.path.realpath() to resolve symlinks
- Enforce working directory chroot (CLOVER_PROJECT_ROOT env var)
- All file ops (read, create, update, delete, list) now validated
- Block access to files outside project directory
2026-07-05 07:01:13 +00:00
opencode
496ac5ec7c fix: prevent command injection via shell=True (issue #1, #3)
- Replace shell=True with shell=False + shlex.split()
- Add command whitelist to restrict allowed executables
- Parse commands safely to prevent metacharacter injection (;, &&, |, backticks)
2026-07-05 07:00:29 +00:00
jarianc
b25fb3c1c6 Merge pull request 'CI: remove --no-cache for docker layer caching' (#12) from ci-fix-nocache into main
Reviewed-on: https://git.home.ms/jarianc/Clover/pulls/12
2026-07-04 22:24:59 -05:00
Jarian
8a726daae3 CI: remove --no-cache for docker layer caching 2026-07-05 03:05:11 +00:00
Jarian
3574466464 CI: add generalized workflow 2026-07-05 02:46:25 +00:00
Jarian Cottingham
5e7fb444f5 Add Docker configuration for Clover service including health check endpoint 2026-01-26 19:19:51 -06:00
Jarian Cottingham
9fa0adae53 docs: Add comprehensive CHANGELOG and update gitignore
- Added detailed CHANGELOG.md documenting all new features
- Updated .gitignore to properly handle tool files
- Documented migration guide and usage examples
2026-01-15 01:24:09 -06:00
Jarian Cottingham
392bcfa2ef feat: Implement AI agent with multi-turn conversation and tool calling
Major enhancements to Clover CLI:

 New Features:
- AI agent with multi-turn conversation capabilities
- Tool calling system with 11+ tools for file operations, Git, linting, etc.
- Step-by-step AI assistance with play-by-play commentary
- Enhanced interactive mode with better UX

🔧 Core Components Added:
- ai_agent.py: Main AI agent with conversation management
- models/: API client and model management system
- Comprehensive tool system for development tasks

🛠️ Tools Available:
- File operations (create, read, update, delete)
- Command execution with safety checks
- Git operations (status, diff, commit, push)
- Code linting and formatting
- Project structure analysis
- Security scanning and dependency management

💡 User Experience:
- Real-time tool execution summaries
- File creation with full path visibility
- Error handling and retry mechanisms
- Clean conversation flow until task completion

🧹 Repository Cleanup:
- Added comprehensive .gitignore
- Removed __pycache__ directories and build artifacts
- Organized project structure

The AI can now actually create files, run commands, and work through complex
development tasks step-by-step with full transparency.
2026-01-15 01:23:40 -06:00
Jarian Cottingham
c4e1c3eecf basic ui implemented 2026-01-13 02:00:28 -06:00
Jarian Cottingham
c101db8ba4 Progress tracking impemented 2026-01-13 00:16:00 -06:00
Jarian Cottingham
7e8d31af6e Clover created 2026-01-13 00:07:41 -06:00