@liangxie/qf 0.0.1
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/.claude/commands/opsx/apply.md +155 -0
- package/.claude/commands/opsx/archive.md +160 -0
- package/.claude/commands/opsx/explore.md +174 -0
- package/.claude/commands/opsx/propose.md +109 -0
- package/.claude/commands/opsx/sync.md +143 -0
- package/.claude/skills/openspec-apply-change/SKILL.md +159 -0
- package/.claude/skills/openspec-archive-change/SKILL.md +117 -0
- package/.claude/skills/openspec-explore/SKILL.md +289 -0
- package/.claude/skills/openspec-propose/SKILL.md +113 -0
- package/.claude/skills/openspec-sync-specs/SKILL.md +147 -0
- package/.codex/skills/openspec-apply-change/SKILL.md +159 -0
- package/.codex/skills/openspec-archive-change/SKILL.md +117 -0
- package/.codex/skills/openspec-explore/SKILL.md +289 -0
- package/.codex/skills/openspec-propose/SKILL.md +113 -0
- package/.codex/skills/openspec-sync-specs/SKILL.md +147 -0
- package/.cursor/commands/opsx-apply.md +155 -0
- package/.cursor/commands/opsx-archive.md +160 -0
- package/.cursor/commands/opsx-explore.md +174 -0
- package/.cursor/commands/opsx-propose.md +109 -0
- package/.cursor/commands/opsx-sync.md +143 -0
- package/.cursor/skills/openspec-apply-change/SKILL.md +159 -0
- package/.cursor/skills/openspec-archive-change/SKILL.md +117 -0
- package/.cursor/skills/openspec-explore/SKILL.md +289 -0
- package/.cursor/skills/openspec-propose/SKILL.md +113 -0
- package/.cursor/skills/openspec-sync-specs/SKILL.md +147 -0
- package/.github/prompts/opsx-apply.prompt.md +152 -0
- package/.github/prompts/opsx-archive.prompt.md +157 -0
- package/.github/prompts/opsx-explore.prompt.md +171 -0
- package/.github/prompts/opsx-propose.prompt.md +106 -0
- package/.github/prompts/opsx-sync.prompt.md +140 -0
- package/.github/skills/openspec-apply-change/SKILL.md +159 -0
- package/.github/skills/openspec-archive-change/SKILL.md +117 -0
- package/.github/skills/openspec-explore/SKILL.md +289 -0
- package/.github/skills/openspec-propose/SKILL.md +113 -0
- package/.github/skills/openspec-sync-specs/SKILL.md +147 -0
- package/.omo/run-continuation/ses_0d9f5cba6ffeW2r1NWuthiPI0F.json +10 -0
- package/.opencode/commands/opsx-apply.md +152 -0
- package/.opencode/commands/opsx-archive.md +157 -0
- package/.opencode/commands/opsx-explore.md +171 -0
- package/.opencode/commands/opsx-propose.md +106 -0
- package/.opencode/commands/opsx-sync.md +140 -0
- package/.opencode/skills/openspec-apply-change/SKILL.md +159 -0
- package/.opencode/skills/openspec-archive-change/SKILL.md +117 -0
- package/.opencode/skills/openspec-explore/SKILL.md +289 -0
- package/.opencode/skills/openspec-propose/SKILL.md +113 -0
- package/.opencode/skills/openspec-sync-specs/SKILL.md +147 -0
- package/LICENSE +21 -0
- package/index.js +17 -0
- package/openspec/changes/archive/2026-07-03-add-say-command/.openspec.yaml +2 -0
- package/openspec/changes/archive/2026-07-03-add-say-command/design.md +73 -0
- package/openspec/changes/archive/2026-07-03-add-say-command/proposal.md +28 -0
- package/openspec/changes/archive/2026-07-03-add-say-command/specs/cli-framework/spec.md +22 -0
- package/openspec/changes/archive/2026-07-03-add-say-command/specs/say-command/spec.md +22 -0
- package/openspec/changes/archive/2026-07-03-add-say-command/tasks.md +17 -0
- package/openspec/config.yaml +20 -0
- package/package.json +25 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
## ADDED Requirements
|
|
2
|
+
|
|
3
|
+
### Requirement: CLI entry point
|
|
4
|
+
The system SHALL have a main entry point file (`index.js`) that initializes the CLI framework.
|
|
5
|
+
|
|
6
|
+
#### Scenario: CLI initializes successfully
|
|
7
|
+
- **WHEN** user runs `qf` command
|
|
8
|
+
- **THEN** system displays help information or version
|
|
9
|
+
|
|
10
|
+
### Requirement: Command registration
|
|
11
|
+
The system SHALL support registering commands using commander library.
|
|
12
|
+
|
|
13
|
+
#### Scenario: Command is registered
|
|
14
|
+
- **WHEN** developer defines a command in index.js
|
|
15
|
+
- **THEN** command is available via `qf <command-name>`
|
|
16
|
+
|
|
17
|
+
### Requirement: Package configuration
|
|
18
|
+
The system SHALL have proper npm package configuration for CLI usage.
|
|
19
|
+
|
|
20
|
+
#### Scenario: Package has bin field
|
|
21
|
+
- **WHEN** developer runs `npm link`
|
|
22
|
+
- **THEN** `qf` command is available globally
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
## ADDED Requirements
|
|
2
|
+
|
|
3
|
+
### Requirement: Say command exists
|
|
4
|
+
The system SHALL have a `say` command that can be invoked via `qf say`.
|
|
5
|
+
|
|
6
|
+
#### Scenario: Say command is available
|
|
7
|
+
- **WHEN** user runs `qf say`
|
|
8
|
+
- **THEN** command executes without error
|
|
9
|
+
|
|
10
|
+
### Requirement: Say command outputs hello
|
|
11
|
+
The system SHALL output "hello" when the `say` command is executed.
|
|
12
|
+
|
|
13
|
+
#### Scenario: Say command outputs hello
|
|
14
|
+
- **WHEN** user runs `qf say`
|
|
15
|
+
- **THEN** system outputs "hello" to stdout
|
|
16
|
+
|
|
17
|
+
### Requirement: Say command has no arguments
|
|
18
|
+
The system SHALL NOT accept any arguments for the `say` command.
|
|
19
|
+
|
|
20
|
+
#### Scenario: Say command ignores arguments
|
|
21
|
+
- **WHEN** user runs `qf say world`
|
|
22
|
+
- **THEN** system still outputs "hello" (ignoring "world")
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
## 1. Setup
|
|
2
|
+
|
|
3
|
+
- [x] 1.1 Create `index.js` file with shebang line
|
|
4
|
+
- [x] 1.2 Add commander dependency to package.json
|
|
5
|
+
- [x] 1.3 Add bin field to package.json
|
|
6
|
+
|
|
7
|
+
## 2. Core Implementation
|
|
8
|
+
|
|
9
|
+
- [x] 2.1 Import commander in index.js
|
|
10
|
+
- [x] 2.2 Define `say` command that outputs "hello"
|
|
11
|
+
- [x] 2.3 Configure program name and version
|
|
12
|
+
|
|
13
|
+
## 3. Testing
|
|
14
|
+
|
|
15
|
+
- [x] 3.1 Run `npm link` to test locally
|
|
16
|
+
- [x] 3.2 Test `qf say` command outputs "hello"
|
|
17
|
+
- [x] 3.3 Verify command works with arguments (should ignore them)
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
schema: spec-driven
|
|
2
|
+
|
|
3
|
+
# Project context (optional)
|
|
4
|
+
# This is shown to AI when creating artifacts.
|
|
5
|
+
# Add your tech stack, conventions, style guides, domain knowledge, etc.
|
|
6
|
+
# Example:
|
|
7
|
+
# context: |
|
|
8
|
+
# Tech stack: TypeScript, React, Node.js
|
|
9
|
+
# We use conventional commits
|
|
10
|
+
# Domain: e-commerce platform
|
|
11
|
+
|
|
12
|
+
# Per-artifact rules (optional)
|
|
13
|
+
# Add custom rules for specific artifacts.
|
|
14
|
+
# Example:
|
|
15
|
+
# rules:
|
|
16
|
+
# proposal:
|
|
17
|
+
# - Keep proposals under 500 words
|
|
18
|
+
# - Always include a "Non-goals" section
|
|
19
|
+
# tasks:
|
|
20
|
+
# - Break tasks into chunks of max 2 hours
|
package/package.json
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@liangxie/qf",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"description": "cli for qframework",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"qframework",
|
|
7
|
+
"gamedevelopment",
|
|
8
|
+
"systemdesign",
|
|
9
|
+
"unity",
|
|
10
|
+
"godot"
|
|
11
|
+
],
|
|
12
|
+
"license": "ISC",
|
|
13
|
+
"author": "liangxie",
|
|
14
|
+
"type": "commonjs",
|
|
15
|
+
"main": "index.js",
|
|
16
|
+
"bin": {
|
|
17
|
+
"qf": "./index.js"
|
|
18
|
+
},
|
|
19
|
+
"scripts": {
|
|
20
|
+
"test": "echo \"Error: no test specified\" && exit 1"
|
|
21
|
+
},
|
|
22
|
+
"dependencies": {
|
|
23
|
+
"commander": "^12.0.0"
|
|
24
|
+
}
|
|
25
|
+
}
|