Commit Graph

6 Commits

Author SHA1 Message Date
Swana Diva Borneos 4087c5fdc7 feat: add & list commands with deadlock fix
- Add 'add' command: register hosts via flags or interactive prompts
  Supports password/key/both auth, groups, tags, notes, port override
- Add 'list' command: display hosts with filtering and formatting
  Supports --group, --tag filters, --sort, table/json/wide output
- Fix deadlock bug in JSON storage (RLock within Lock)
  Introduced internal list functions that don't lock
  Affects: ListHosts/GetHost/SaveHost/DeleteHost + KeyPair + Snippet
- Add comprehensive tests for add and list commands
- Update PROJECT_STATE.md (Tasks 1-8 complete, ~55% done)
2026-06-23 10:56:04 +07:00
swanadiva 7dfe181b97 docs: update PROJECT_STATE.md - Task 6 complete (CLI Framework Setup)
- Mark Task 6 (CLI Framework Setup) as complete
- Update completion matrix: CLI Framework 100%, Testing ~30%
- Update overall progress to ~45%
- Mark Milestone 1 (Foundation) as COMPLETE
- Update sprint tracking and roadmap
2026-06-22 16:23:27 +07:00
swanadiva 8ea4b6e990 feat: Implement SSH client with authentication support (Task 5)
- Add SSH client with Connect/Execute/Close/IsConnected
- Implement password, key, and both authentication methods
- Support default key discovery (~/.ssh/id_ed25519, id_rsa, etc.)
- Support passphrase-protected keys via ParsePrivateKeyWithPassphrase
- Path expansion for ~ in KeyID
- Integrate with HandleSSHError for user-friendly errors
- All 4 SSH tests passing + 5 error tests still passing (9 total)

Progress: Tasks 1-5 complete (~40%)
2026-06-22 16:16:16 +07:00
swanadiva 6fd25e4d02 feat: Implement error handling framework (Task 4)
- Add AppError with error codes and hints system
- Implement ConnectionError for SSH-specific errors
- Add HandleSSHError for intelligent SSH error parsing
- Add FormatConnectionError for user-friendly output
- All 5 test functions passing (TestAppError, TestConnectionError,
  TestHandleSSHError, TestHandleSSHErrorNil, TestFormatConnectionError)
- Update PROJECT_STATE.md to reflect Task 4 completion

Progress: Tasks 1-4 complete (~30%)
2026-06-22 16:12:28 +07:00
swanadiva 33947816b7 feat: complete Tasks 1-3 (setup, models+storage, config management)
- Task 1: Project setup (go.mod, Makefile, .gitignore, main.go)
- Task 2: Core data models (Host, KeyPair, Snippet, AppConfig) + JSON storage layer
- Task 3: Configuration management with cross-platform path support (macOS/Linux/Windows)
- Updated PROJECT_STATE.md with progress tracking
2026-06-22 16:09:02 +07:00
swanadiva 0dc6e62b85 docs: Add comprehensive project state tracking and handoff guide
- Create PROJECT_STATE.md for seamless agent/session continuity
- Include current completion status matrix (0% complete, planning done)
- Add detailed implementation task status with dependencies
- Provide quick start guide for new agents/LLMs
- Include handoff procedures for both new and returning agents
- Add testing strategy, debugging guides, and progress tracking
- Enable any agent to continue development without prior context
- Maintain roadmap and milestone tracking
- Cross-reference all documentation for easy navigation

This ensures any LLM/agent can immediately understand project state
and continue implementation from where previous session ended.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-22 15:46:31 +07:00