@hasna/project 0.1.11 → 0.1.12
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.
- package/README.md +56 -19
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -13,39 +13,70 @@ bun install -g @hasna/project
|
|
|
13
13
|
```bash
|
|
14
14
|
# Register a project
|
|
15
15
|
project create --name my-app --path /path/to/my-app
|
|
16
|
+
project create --name my-app # uses cwd as path
|
|
16
17
|
|
|
17
|
-
# List
|
|
18
|
+
# List / search
|
|
18
19
|
project list
|
|
19
20
|
project list --status archived
|
|
20
|
-
|
|
21
|
-
#
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
#
|
|
21
|
+
project list --tags web,ts # AND filter
|
|
22
|
+
project list --json | jq '.[].path' # machine-readable
|
|
23
|
+
|
|
24
|
+
# Get / status
|
|
25
|
+
project get my-app # auto-detects from cwd
|
|
26
|
+
project get my-app --json
|
|
27
|
+
project status # all projects at a glance
|
|
28
|
+
project status my-app # single project detail
|
|
29
|
+
project recent # recently opened (with relative times)
|
|
30
|
+
project doctor # health-check all projects
|
|
31
|
+
project doctor my-app --fix # auto-repair what can be fixed
|
|
32
|
+
project stats # disk / sync totals
|
|
33
|
+
project stats my-app
|
|
34
|
+
|
|
35
|
+
# Modify
|
|
28
36
|
project update my-app --description "My app" --tags "web,ts"
|
|
29
|
-
|
|
30
|
-
#
|
|
37
|
+
project rename my-app my-app-v2 # updates slug + .project.json
|
|
38
|
+
project tag my-app infra cloud # add tags
|
|
39
|
+
project untag my-app cloud # remove a tag
|
|
31
40
|
project archive my-app
|
|
32
41
|
project unarchive my-app
|
|
33
42
|
|
|
43
|
+
# Open (cd into it)
|
|
44
|
+
cd $(project open my-app) # print path; auto-detects cwd
|
|
45
|
+
workon my-app # shell function — actually cd's
|
|
46
|
+
penv my-app # load project .env into shell
|
|
47
|
+
project env my-app # print export statements (eval)
|
|
48
|
+
project env my-app --list # list keys only
|
|
49
|
+
|
|
50
|
+
# Working directories (multi-machine / multi-repo)
|
|
51
|
+
project workdir add my-app /path/to/dir --label backend
|
|
52
|
+
project workdir list my-app
|
|
53
|
+
project workdir generate my-app # write CLAUDE.md + AGENTS.md
|
|
54
|
+
project workdir generate my-app --dry-run
|
|
55
|
+
project workdir remove my-app /path/to/dir
|
|
56
|
+
|
|
34
57
|
# Import existing directories
|
|
35
58
|
project import /path/to/existing-project
|
|
36
|
-
project import-bulk /path/to/workspace
|
|
59
|
+
project import-bulk /path/to/workspace # imports all subdirs
|
|
60
|
+
project clone my-app /new/local/path # pull from S3 to new machine path
|
|
37
61
|
|
|
38
62
|
# Sync to/from S3
|
|
39
63
|
project update my-app --s3-bucket my-bucket
|
|
40
64
|
project sync my-app
|
|
41
65
|
project sync my-app --direction push
|
|
42
|
-
project sync-all
|
|
66
|
+
project sync-all # sync all projects with S3 configured
|
|
67
|
+
project watch my-app # push changes live as you edit
|
|
68
|
+
project sync-log my-app # show sync history
|
|
43
69
|
|
|
44
70
|
# Schedule auto-sync
|
|
45
71
|
project schedule set --interval daily --direction both
|
|
46
72
|
project schedule status
|
|
47
73
|
project schedule remove
|
|
48
74
|
|
|
75
|
+
# Cloud sync (SQLite ↔ RDS PostgreSQL)
|
|
76
|
+
project cloud status
|
|
77
|
+
project cloud pull
|
|
78
|
+
project cloud push
|
|
79
|
+
|
|
49
80
|
# Publish to GitHub
|
|
50
81
|
project publish my-app --org hasnaxyz
|
|
51
82
|
project unpublish my-app
|
|
@@ -54,9 +85,9 @@ project unpublish my-app
|
|
|
54
85
|
project git my-app status
|
|
55
86
|
project git my-app log --oneline -10
|
|
56
87
|
|
|
57
|
-
# Shell completion
|
|
58
|
-
eval "$(project completion)"
|
|
59
|
-
eval "$(project completion --shell zsh)"
|
|
88
|
+
# Shell completion (includes workon + penv functions)
|
|
89
|
+
eval "$(project completion)" # bash
|
|
90
|
+
eval "$(project completion --shell zsh)" # zsh
|
|
60
91
|
```
|
|
61
92
|
|
|
62
93
|
## MCP Server
|
|
@@ -78,20 +109,26 @@ Add to your Claude config:
|
|
|
78
109
|
| Tool | Description |
|
|
79
110
|
|------|-------------|
|
|
80
111
|
| `projects_create` | Register a new project. Returns `workingDirectory` + `post_create_actions` |
|
|
81
|
-
| `projects_list` | List projects, filter by status |
|
|
112
|
+
| `projects_list` | List projects, filter by `status` and/or `tags` |
|
|
82
113
|
| `projects_get` | Get project by ID or slug. Returns `workingDirectory` |
|
|
83
114
|
| `projects_update` | Update project metadata |
|
|
84
115
|
| `projects_archive` | Archive a project |
|
|
85
|
-
| `projects_open` | Get `workingDirectory` for a project |
|
|
116
|
+
| `projects_open` | Get `workingDirectory` for a project (also tracks `last_opened_at`) |
|
|
86
117
|
| `projects_sync` | Sync to/from S3 (incremental, by file hash) |
|
|
87
118
|
| `projects_sync_all` | Sync all active projects with S3 configured |
|
|
119
|
+
| `projects_sync_log` | List recent sync history |
|
|
88
120
|
| `projects_link` | Store integration IDs (todos, mementos, conversations, files) |
|
|
89
121
|
| `projects_import` | Import an existing directory as a project |
|
|
90
122
|
| `projects_import_bulk` | Import all subdirectories of a path |
|
|
91
123
|
| `projects_publish` | Create GitHub repo, add remote, push |
|
|
124
|
+
| `projects_workdir_add` | Add a working directory; optionally generate CLAUDE.md + AGENTS.md |
|
|
125
|
+
| `projects_workdir_list` | List all working directories for a project |
|
|
126
|
+
| `projects_workdir_generate` | Generate CLAUDE.md + AGENTS.md in working directories |
|
|
92
127
|
| `projects_schedule_set` | Enable cron-based auto-sync |
|
|
93
128
|
| `projects_schedule_status` | Get current schedule config |
|
|
94
|
-
| `
|
|
129
|
+
| `projects_cloud_status` | Show RDS connection health |
|
|
130
|
+
| `projects_cloud_pull` | Pull from cloud PostgreSQL to local SQLite |
|
|
131
|
+
| `projects_cloud_push` | Push local SQLite to cloud PostgreSQL |
|
|
95
132
|
|
|
96
133
|
### projects_create response
|
|
97
134
|
|
package/package.json
CHANGED