workon 1.0.0 → 1.1.0

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.
@@ -0,0 +1,3 @@
1
+
2
+ # Don't index SpecStory auto-save files, but allow explicit context inclusion via @ references
3
+ .specstory/**
@@ -0,0 +1,11 @@
1
+ {
2
+ "autorun": true,
3
+ "artificialDelay": 1000,
4
+ "terminals": [
5
+ {
6
+ "name": "Persistent",
7
+ "focus": true,
8
+ "command": "cc"
9
+ }
10
+ ]
11
+ }
package/CHANGELOG.md CHANGED
@@ -2,6 +2,22 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ <a name="1.1.0"></a>
6
+ # [1.1.0](https://github.com/israelroldan/workon/compare/v1.0.0...v1.1.0) (2025-08-06)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * Update package.json format for npm publish ([6c5e9e0](https://github.com/israelroldan/workon/commit/6c5e9e0))
12
+
13
+
14
+ ### Features
15
+
16
+ * Enhance CLI with new 'claude' command support ([70b3f96](https://github.com/israelroldan/workon/commit/70b3f96))
17
+ * Improve shell integration for workon command ([f5b6ff0](https://github.com/israelroldan/workon/commit/f5b6ff0))
18
+
19
+
20
+
5
21
  <a name="1.0.0-alpha.1"></a>
6
22
  # [1.0.0-alpha.1](https://code.palu.io/israel/workon/compare/v1.0.0-alpha.0...v1.0.0-alpha.1) (2017-06-26)
7
23
 
package/cli/index.js CHANGED
@@ -83,15 +83,40 @@ class workon extends container {
83
83
 
84
84
  outputShellInit () {
85
85
  let me = this;
86
+
87
+ // Get list of available commands from switchit
88
+ let cmdNames = me.constructor.getAspects().commands.filter((c) => !!c).map((c) => c.name);
89
+
90
+ // Get list of available switches from switchit
91
+ let switches = me.constructor.getAspects().switches || [];
92
+ let switchFlags = [];
93
+ switches.forEach(sw => {
94
+ switchFlags.push('--' + sw.name);
95
+ if (sw.char) {
96
+ switchFlags.push('-' + sw.char);
97
+ }
98
+ });
99
+
100
+ // Add built-in switchit flags (help and version are automatically added by switchit)
101
+ let builtinFlags = ['--help', '-h', '--version', '-v', 'help'];
102
+
103
+ // Combine all non-shell commands and flags, removing duplicates
104
+ let nonShellCommands = [...new Set(cmdNames.concat(switchFlags).concat(builtinFlags))];
105
+ let casePattern = nonShellCommands.join('|');
106
+
86
107
  // Generate shell function that wraps workon calls
87
108
  let shellFunction = `
88
109
  # workon shell integration
89
110
  workon() {
90
- if [[ "$1" == "--init" ]]; then
91
- command workon "$@"
92
- return $?
93
- fi
111
+ # Commands that should NOT use shell mode
112
+ case "$1" in
113
+ ${casePattern})
114
+ command workon "$@"
115
+ return $?
116
+ ;;
117
+ esac
94
118
 
119
+ # Default behavior: use shell mode for project opening
95
120
  local output
96
121
  output=$(command workon --shell "$@" 2>&1)
97
122
  local exit_code=$?
package/cli/open.js CHANGED
@@ -125,6 +125,16 @@ class open extends command {
125
125
  }
126
126
  }
127
127
  break;
128
+ case 'claude':
129
+ if (isShellMode) {
130
+ me.shellCommands.push(`claude &`);
131
+ } else {
132
+ spawn('claude', [], {
133
+ cwd: environment.project.path.path,
134
+ stdio: 'inherit'
135
+ });
136
+ }
137
+ break;
128
138
  }
129
139
  }
130
140
  if (`before${capitalEvt}` in scripts) {
package/docs/ideas.md ADDED
@@ -0,0 +1,49 @@
1
+ # Ideas for workon
2
+
3
+ This document contains ideas for future enhancements to the workon project.
4
+
5
+ ## Interactive Project Management
6
+
7
+ ### Project Configuration Editor
8
+ Create an interactive mode for editing project configurations through guided prompts instead of manual file editing.
9
+
10
+ **Features:**
11
+ - Interactive project creation wizard with step-by-step guidance
12
+ - Edit existing project properties (name, path, IDE, events) through prompts
13
+ - Validate project paths and IDE commands during configuration
14
+ - Preview configuration changes before saving
15
+ - Bulk operations for managing multiple projects
16
+
17
+ **Implementation considerations:**
18
+ - Extend existing inquirer-based interactive system
19
+ - Add new command like `workon config` or `workon manage --interactive`
20
+ - Provide different flows for:
21
+ - Creating new projects
22
+ - Editing existing projects
23
+ - Bulk project management
24
+ - Include validation for:
25
+ - Directory paths existence
26
+ - IDE command availability
27
+ - Event configuration correctness
28
+
29
+ **Benefits:**
30
+ - Lower barrier to entry for new users
31
+ - Reduced configuration errors through validation
32
+ - More discoverable project management features
33
+ - Better UX compared to manual JSON editing
34
+
35
+ ## Enhanced Events
36
+
37
+ ### Advanced claude Event Options
38
+ Extend the claude event with more configuration options:
39
+ ```json
40
+ "claude": {
41
+ "mode": "interactive",
42
+ "flags": ["--resume"],
43
+ "project_context": true
44
+ }
45
+ ```
46
+
47
+ ## Future Ideas
48
+
49
+ *Add more ideas here as they come up...*
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "workon",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
4
  "description": "Work on something great!",
5
5
  "main": "index.js",
6
6
  "scripts": {