sudocode 1.0.0 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +223 -0
  2. package/package.json +19 -16
  3. package/index.js +0 -5
package/README.md ADDED
@@ -0,0 +1,223 @@
1
+ # sudocode
2
+
3
+ Git-native spec and issue management for AI-assisted software development.
4
+
5
+ ## Overview
6
+
7
+ Sudocode is a git-native workflow tool designed for AI-assisted development. It stores specs and issues as JSONL files alongside your code, enabling version control, branching, and merging of your project management data just like code.
8
+
9
+ **Key Features:**
10
+ - **Git-native** - All data stored in `.sudocode/` as JSONL, versioned with your code
11
+ - **Anchored feedback** - Link issues to specific lines in specs with smart relocation
12
+ - **Relationship tracking** - Model dependencies, blockers, and implementations
13
+ - **MCP integration** - Works seamlessly with Claude and other AI assistants
14
+ - **Fast local cache** - SQLite for instant queries without parsing JSONL
15
+ - **Bidirectional sync** - Export to markdown, edit, import back
16
+
17
+ ## What's Included
18
+
19
+ This meta-package bundles all sudocode components:
20
+
21
+ - **@sudocode-ai/cli** - Command-line interface (`sudocode` command)
22
+ - **@sudocode-ai/mcp** - Model Context Protocol server for AI assistants
23
+ - **@sudocode-ai/types** - TypeScript type definitions
24
+
25
+ ## Installation
26
+
27
+ ```bash
28
+ npm install -g sudocode
29
+ ```
30
+
31
+ After installation, both `sudocode` (also aliased as `sdc`) commands will be available.
32
+
33
+ ## Quick Start
34
+
35
+ ```bash
36
+ # Initialize in your project
37
+ sudocode init
38
+
39
+ # Create your first spec
40
+ sudocode spec create "User authentication system" -p 4
41
+
42
+ # Create an issue
43
+ sudocode issue create "Implement OAuth login" -p 3 -a alice
44
+
45
+ # Link the issue to the spec
46
+ sudocode link ISSUE-1 SPEC-1 --type implements
47
+
48
+ # Show what's ready to work on
49
+ sudocode ready
50
+
51
+ # Update issue status
52
+ sudocode issue update ISSUE-1 --status in_progress
53
+
54
+ # View project status
55
+ sudocode status
56
+ ```
57
+
58
+ ## Core Commands
59
+
60
+ ```bash
61
+ # Initialization
62
+ sudocode init # Set up .sudocode/ directory
63
+
64
+ # Specs (specifications/requirements)
65
+ sudocode spec create <title> [options] # Create a spec
66
+ sudocode spec list # List all specs
67
+ sudocode spec show <id> # Show spec details
68
+
69
+ # Issues (tasks/bugs)
70
+ sudocode issue create <title> [options] # Create an issue
71
+ sudocode issue list [options] # List issues
72
+ sudocode issue update <id> [options] # Update issue
73
+ sudocode issue close <id> # Close issue
74
+
75
+ # Relationships
76
+ sudocode link <from> <to> --type <type> # Link entities
77
+ sudocode ready # Show unblocked work
78
+ sudocode blocked # Show blocked issues
79
+
80
+ # Feedback (link issues to spec lines)
81
+ sudocode feedback add <issue> <spec> [options] # Add anchored feedback
82
+ sudocode feedback list # List feedback
83
+
84
+ # Status
85
+ sudocode status # Quick status
86
+ sudocode stats # Detailed statistics
87
+
88
+ # Sync
89
+ sudocode sync # Sync JSONL with database
90
+ sudocode sync --watch # Auto-sync on changes
91
+ ```
92
+
93
+ For full command documentation, see [@sudocode-ai/cli](https://github.com/sudocode-ai/sudocode/tree/main/cli).
94
+
95
+ ## MCP Integration
96
+
97
+ Sudocode includes an MCP server for seamless AI assistant integration. To use with Claude Code, you can either:
98
+
99
+ 1. Add sudocode as a plugin:
100
+
101
+ ```bash
102
+ # In Claude Code
103
+ /plugin marketplace add sudocode-ai/sudocode
104
+ /plugin install sudocode
105
+ ```
106
+
107
+ 2. Configure Claude Code MCP server:
108
+
109
+ ```json
110
+ {
111
+ "mcpServers": {
112
+ "sudocode": {
113
+ "command": "sudocode-mcp"
114
+ }
115
+ }
116
+ }
117
+ ```
118
+
119
+ Restart Claude Code to apply changes.
120
+
121
+ For full MCP documentation, see [@sudocode-ai/mcp](https://github.com/sudocode-ai/sudocode/tree/main/mcp).
122
+
123
+ ## Example Workflow
124
+
125
+ ### Creating a Feature
126
+
127
+ ```bash
128
+ # Create a spec for the feature
129
+ sudocode spec create "OAuth2 Authentication" -p 4 --tags auth,security
130
+
131
+ # Create implementation issues
132
+ sudocode issue create "Set up OAuth provider configuration" -p 3 -a alice
133
+ sudocode issue create "Implement login endpoint" -p 3 -a bob
134
+ sudocode issue create "Add token refresh logic" -p 2 -a alice
135
+
136
+ # Link issues to spec
137
+ sudocode link ISSUE-1 SPEC-1 --type implements
138
+ sudocode link ISSUE-2 SPEC-1 --type implements
139
+ sudocode link ISSUE-3 SPEC-1 --type implements
140
+
141
+ # Model dependencies
142
+ sudocode link ISSUE-2 ISSUE-1 --type depends-on
143
+
144
+ # Check what's ready
145
+ sudocode ready
146
+ # Shows: ISSUE-1 (no dependencies)
147
+
148
+ # Start work
149
+ sudocode issue update ISSUE-1 --status in_progress
150
+ ```
151
+
152
+ ### Adding Feedback to Specs
153
+
154
+ ```bash
155
+ # Add feedback at a specific line
156
+ sudocode feedback add ISSUE-4 SPEC-1 \
157
+ --line 42 \
158
+ --content "Should we support 2FA?" \
159
+ --type suggestion
160
+
161
+ # Or search for text
162
+ sudocode feedback add ISSUE-5 SPEC-1 \
163
+ --text "password requirements" \
164
+ --content "Consider adding passwordless options" \
165
+ --type comment
166
+
167
+ # View feedback
168
+ sudocode feedback list --spec SPEC-1
169
+ ```
170
+
171
+ ## File Structure
172
+
173
+ After `sudocode init`, your project will have:
174
+
175
+ ```
176
+ .sudocode/
177
+ ├── meta.json # Config & ID counters (git tracked)
178
+ ├── specs.jsonl # All specs (git tracked)
179
+ ├── issues.jsonl # All issues (git tracked)
180
+ ├── cache.db # SQLite cache (gitignored)
181
+ ├── specs/ # Generated markdown that you can edit (gitignored)
182
+ ├── issues/ # Generated markdown that you can edit (gitignored)
183
+ └── .gitignore # Ignores cache and generated files
184
+ ```
185
+
186
+ The JSONL files are designed to be merged in git like code - each line is a complete entity.
187
+
188
+ ## Why Git-Native?
189
+
190
+ **Traditional approach:** Project management data lives in external tools (Jira, Linear, etc.), disconnected from your code.
191
+
192
+ **Sudocode approach:** Project management data lives alongside your code in git, enabling:
193
+ - **Branch specs/issues** with your code branches
194
+ - **Merge specs/issues** when merging branches
195
+ - **Revert specs/issues** along with code changes
196
+ - **Review specs/issues** in pull requests
197
+ - **Version specs/issues** with release tags
198
+ - **AI assistants** can read and modify directly
199
+
200
+ ## Use Cases
201
+
202
+ - **AI-assisted development** - Let AI agents manage issues and provide spec feedback
203
+ - **Spec-driven development** - Write specs, generate issues, track implementation
204
+ - **Context management** - Store project context that moves with your code
205
+ - **Local-first workflow** - No external services required, works offline
206
+ - **Team coordination** - Share specs/issues through git, merge like code
207
+
208
+ ## Documentation
209
+
210
+ - **CLI Reference:** [@sudocode-ai/cli](https://github.com/sudocode-ai/sudocode/tree/main/cli)
211
+ - **MCP Server:** [@sudocode-ai/mcp](https://github.com/sudocode-ai/sudocode/tree/main/mcp)
212
+ - **Type Definitions:** [@sudocode-ai/types](https://github.com/sudocode-ai/sudocode/tree/main/types)
213
+
214
+ ## Individual Package Installation
215
+
216
+ You can also install packages individually:
217
+
218
+ ```bash
219
+ npm install -g @sudocode-ai/cli # CLI only
220
+ npm install -g @sudocode-ai/mcp # MCP server only
221
+ npm install -g @sudocode-ai/local-server # Under construction!
222
+ npm install @sudocode-ai/types # Types only (for development)
223
+ ```
package/package.json CHANGED
@@ -1,19 +1,22 @@
1
1
  {
2
2
  "name": "sudocode",
3
- "version": "1.0.0",
4
- "description": "sudocode core libraries",
5
- "main": "index.js",
6
- "scripts": {
7
- "test": "echo \"Error: no test specified\" && exit 1"
8
- },
9
- "repository": {
10
- "type": "git",
11
- "url": "git+https://github.com/sudocode-ai/sudocode-js.git"
12
- },
13
- "author": "",
14
- "license": "ISC",
15
- "bugs": {
16
- "url": "https://github.com/sudocode-ai/sudocode-js/issues"
17
- },
18
- "homepage": "https://github.com/sudocode-ai/sudocode-js#readme"
3
+ "version": "1.1.2",
4
+ "description": "Git-native spec and issue management for AI-assisted software development - meta-package",
5
+ "type": "module",
6
+ "keywords": [
7
+ "sudocode",
8
+ "project-management",
9
+ "specs",
10
+ "issues",
11
+ "mcp",
12
+ "cli"
13
+ ],
14
+ "author": "sudocode AI",
15
+ "license": "Apache-2.0",
16
+ "dependencies": {
17
+ "@sudocode-ai/types": "^0.1.2",
18
+ "@sudocode-ai/cli": "^0.1.2",
19
+ "@sudocode-ai/mcp": "^0.1.2",
20
+ "@sudocode-ai/local-server": "^0.1.2"
21
+ }
19
22
  }
package/index.js DELETED
@@ -1,5 +0,0 @@
1
- function helloSudocode() {
2
- console.log("Hello Sudocode!");
3
- }
4
-
5
- module.exports = helloSudocode;