/ .cursor
.cursor
1 # BitKnotsRS Project Configuration for AI Agents 2 3 ## Issue Management & Collaboration 4 This project uses **Radicle** (https://radicle.xyz) for decentralized issue management and code collaboration. 5 6 ### Radicle Setup 7 - **Protocol**: Peer-to-peer Git collaboration without centralized servers 8 - **Installation Guide**: https://radicle.xyz/guides/user#installation 9 - **CLI Tool**: `rad` command for managing repositories, issues, and patches 10 11 ### Key Radicle Commands 12 - `rad issue list` - List project issues 13 - `rad issue show <id>` - View specific issue details 14 - `rad issue open` - Create new issue 15 - `rad patch list` - List patches/pull requests 16 - `rad patch show <id>` - View patch details 17 - `rad sync` - Synchronize with network peers 18 19 ### Project Workflow 20 1. Issues are managed through Radicle's decentralized issue tracker 21 2. Code collaboration happens via Radicle patches (equivalent to pull requests) 22 3. No dependency on GitHub/GitLab for issue tracking 23 4. Peer-to-peer collaboration model 24 25 ### For AI Agents 26 - When discussing issues, refer to Radicle's issue management system 27 - Suggest using `rad` commands for issue-related tasks 28 - Remember this is a decentralized, peer-to-peer development environment 29 - The project values sovereignty and decentralization in development tools 30 31 ### Issue Workflow for AI Agents 32 1. **Review checklist FIRST** with `just issue-checklist` before creating any issue 33 2. **Check existing issues** with `just issues` to avoid duplicates 34 3. **Search for similar issues** with `just search-issues <keyword>` 35 4. **If similar issue exists**: Comment on existing issue or suggest collaboration 36 5. **If new issue needed**: Draft locally using `.issues/` workspace before creating in Radicle 37 6. **Use templates** from `.issues/templates/` for consistency 38 7. **Create drafts** with `just draft-issue <name>` 39 8. **Create Radicle issues** with `just create-issue "<title>" <draft>` 40 9. **Track progress** with `just issues` and `just issue <id>` 41 10. **Clean up** with `just clean-drafts` after syncing 42 43 ### Before Creating New Issues - ALWAYS CHECK: 44 - Run `just issues` to see all existing issues 45 - Use `just search-issues <keyword>` to find similar issues by topic 46 - Use `just issues-summary` for a quick overview of all issues 47 - Look for similar functionality, components, or goals 48 - Check if the work could be added to an existing issue as a subtask 49 - Consider if it's better to collaborate on existing work vs. creating new issue 50 51 ### Development Workflow Commands 52 - `just dev-workflow` - Format, lint, test, and sync with Radicle 53 - `just patch-prep` - Prepare code for patch submission 54 - `just patch-new` - Create new patch from current branch 55 - `just sync` - Sync with Radicle network 56 - `just issues` - List all issues 57 - `just search-issues <keyword>` - Search for issues by keyword 58 - `just issues-summary` - Quick overview of all issues 59 - `just patches` - List all patches 60 61 ### Issue Collaboration Guidelines 62 - **Always search before creating**: Use search commands to find existing work 63 - **Comment on existing issues**: Add thoughts, suggestions, or offer help 64 - **Break down large issues**: Suggest subtasks or related issues when appropriate 65 - **Reference related issues**: Use issue IDs when creating patches or related work 66 - **Update issue status**: Comment on progress and completion 67 68 ### Git & Repository Management 69 - `just git-status` - Enhanced git status with ignored files 70 - `just git-clean` - Clean git ignored files 71 - `just clean-drafts` - Clean up temporary issue/patch drafts 72 - `just list-drafts` - Show current drafts in workspace 73 74 ### File Structure Notes 75 - `.issues/` - Local workspace for drafting (drafts/ and temp/ are git-ignored) 76 - `justfile` - All development commands (50+ commands available) 77 - `.gitignore` - Comprehensive ignore rules for Bitcoin node development 78 - `.gitattributes` - Ensures consistent line endings and file handling 79 80 ### Current Active Issues 81 - Issue #09a530958b8db3b8899b9531edc4ae4cea041f7b: "Implement P2P Networking and Peer Discovery" 82 - Status: Open, tracking P2P networking implementation 83 - Phases: Network Foundation → Peer Discovery → Connection Management → Protocol Messages → Integration 84 85 ## Project Context 86 - **Language**: Rust 87 - **Type**: Bitcoin node implementation 88 - **Architecture**: Actor-based with Actix 89 - **Storage**: RocksDB 90 - **Build Tool**: Cargo + Just command runner 91 - **Testing**: Comprehensive unit test suite (18+ tests)