@rudinmax87/united-we-stand 0.1.0 → 0.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.
package/README.md CHANGED
@@ -1,8 +1,6 @@
1
- # united-we-stand source repository
1
+ # united-we-stand Framework
2
2
 
3
- This repository is the source, build, test, and publish workspace for the `united-we-stand` package.
4
-
5
- It is the maintainer documentation for this repository, not the installed end-user framework guide.
3
+ This repository is the documentation, source, build, test, and publish workspace for the `united-we-stand` package.
6
4
 
7
5
  The runtime framework README that gets installed into target repositories is:
8
6
 
@@ -10,44 +8,44 @@ The runtime framework README that gets installed into target repositories is:
10
8
 
11
9
  ![united-we-stand logo](./public/united-we-stand-logo.png)
12
10
 
13
- ## What This Repository Contains
11
+ `united-we-stand` is a spec-driven development framework for agentic AI collaboration. It gives AI assistants a structured way to handle feature work, bug fixes, refactors, reviews, migrations, release preparation, and documentation updates with persistent branch-aware context instead of relying only on chat history.
14
12
 
15
- - `src/`
16
- - CLI entrypoint, commands, and library code
17
- - `.united-we-stand/`
18
- - framework markdown assets that are installed into target repositories
19
- - `tests/`
20
- - unit, integration, and built-CLI smoke coverage
21
- - `scripts/`
22
- - maintainer scripts, including GitHub publish artifact preparation
23
- - `public/`
24
- - repository-local static assets such as the project logo used in this README
25
- - `VERSIONS.md`
26
- - manual package version history and release notes
13
+ The framework combines detailed staged instructions, reusable playbooks, and specialist agents that are invoked based on the task at hand. It is designed to work well with VS Code, Antigravity, Cursor, and similar repository-aware coding environments.
27
14
 
28
- ## Repository Layout
15
+ ## What it does
29
16
 
30
- ```text
31
- repo-root/
32
- |-- .united-we-stand/
33
- |-- public/
34
- |-- scripts/
35
- |-- src/
36
- | |-- cli.tsx
37
- | |-- index.tsx
38
- | |-- commands/
39
- | `-- lib/
40
- |-- tests/
41
- |-- LICENSE
42
- |-- package-lock.json
43
- |-- package.json
44
- |-- README.md
45
- |-- VERSIONS.md
46
- |-- tsconfig.json
47
- `-- vitest.config.ts
48
- ```
17
+ The `united-we-stand` npm package installs a repository-scoped AI workflow framework that helps coding assistants work in a structured, branch-aware way instead of relying only on chat memory.
18
+
19
+ It provides:
20
+
21
+ - a global CLI: `united-we-stand`
22
+ - an installed framework directory: `.united-we-stand/`
23
+ - branch-aware workflow memory under `.spec-driven/`
24
+ - numbered framework stages for end-to-end delivery
25
+ - standalone specialist agents for focused tasks
26
+ - editor/AI pointer files that redirect supported tools back to the installed framework and current workflow state
27
+
28
+ Once installed and initialized, the framework helps an AI assistant understand:
49
29
 
50
- ## What The Package Exports
30
+ - the current branch context
31
+ - the current workflow stage
32
+ - what has already been decided
33
+ - what file should be updated next
34
+ - how to continue work consistently across supported tools and chats
35
+
36
+ ## Why it exists
37
+
38
+ Most AI coding workflows lose context between chats, tools, branches, and sessions. `united-we-stand` exists to give AI assistants a predictable, durable workflow model inside the repository itself.
39
+
40
+ Instead of depending only on temporary chat history, the framework stores branch progress and stage outputs in markdown files that travel with the repository. This makes it easier to:
41
+
42
+ - resume work later
43
+ - switch between supported AI coding tools
44
+ - keep feature planning and implementation grounded in written state
45
+ - reduce repeated prompting
46
+ - keep multi-step development work organized
47
+
48
+ ## The package
51
49
 
52
50
  The package installs a global CLI named:
53
51
 
@@ -60,22 +58,19 @@ The built package ships:
60
58
  - `README.md`
61
59
  - `LICENSE`
62
60
 
63
- The repository also contains `public/` assets for source-repo documentation, but those are not currently part of the published npm package.
61
+ The repository also contains `public/` assets for source-repo documentation, and those assets are currently included in the published package.
64
62
 
65
- ## GitHub Repository Star
63
+ Once the framework is installed and initialized, branch memory is saved for future chats and can be resumed across supported tools. You can move between VS Code, Antigravity, Cursor, and similar environments without manually re-pointing the AI, because the installed instructions direct it back to the current spec and workflow state automatically.
66
64
 
67
- During `united-we-stand install`, the CLI makes a best-effort attempt to star the source repository on GitHub:
65
+ In a new chat, a simple prompt such as `what is the current status of united-we-stand` can be used to confirm the active workflow state.
68
66
 
69
- - <https://github.com/mrudinal/united-we-stand-framework>
67
+ ## GitHub Repository Star Suggestion
70
68
 
71
- This is a non-blocking operation that does not affect the install outcome. The user is informed of the result:
69
+ After `united-we-stand install` completes inside a target repository, the CLI prints a short suggestion to star the source repository if the framework was helpful:
72
70
 
73
- - If a `GITHUB_TOKEN` or `GH_TOKEN` environment variable is set, the CLI uses the GitHub REST API.
74
- - If the `gh` CLI is installed and authenticated, it falls back to `gh api`.
75
- - If neither authentication method is available, the CLI logs that GitHub auth was not detected and continues.
76
- - On any error or timeout, the CLI logs a warning and continues normally.
71
+ - <https://github.com/mrudinal/united-we-stand-framework>
77
72
 
78
- The star attempt runs after all framework files have been written. It never blocks, never fails the install, and never modifies any files.
73
+ This is only a log message. The install command does not call the GitHub API, does not use the `gh` CLI, does not read GitHub auth tokens for starring, and does not modify the user's GitHub account in any way.
79
74
 
80
75
  ## End-User Documentation
81
76
 
@@ -90,7 +85,7 @@ That file explains:
90
85
  - framework stages and standalone agents
91
86
  - runtime branch-memory layout inside their repositories
92
87
 
93
- ## Package Summary
88
+ ## How to install it
94
89
 
95
90
  Install the public npm package with:
96
91
 
@@ -104,20 +99,52 @@ Then, inside a target repository:
104
99
  united-we-stand install
105
100
  ```
106
101
 
107
- For resetting the framework back to the defaults and overwrite everything under `.united-we-stand/`:
102
+ For resetting the framework back to the defaults and overwriting everything under `.united-we-stand/`:
108
103
 
109
104
  ```bash
110
105
  united-we-stand install --force
111
106
  ```
112
107
 
113
- That installs:
108
+ The install command creates the following framework files and directories:
114
109
 
115
- - the framework docs under `.united-we-stand/`
116
- - editor/agent pointer files such as `AGENTS.md`, `.github/copilot-instructions.md`, `.agents/workflows/united-we-stand.md`, and `.cursor/rules/united-we-stand.mdc`
117
- - numbered framework agents: `0-status-checker`, `1-initializer`, `2-planner`, `3-designer`, `4-implementer`, `5-code-reviewer`, `6-finalizer`
118
- - standalone specialist agents: `debugger`, `documentation-writer`, `project-manager`, `refactorer`, `test-strategist`, `performance-reviewer`, `accessibility-reviewer`, `api-contract-writer`, `data-modeler`, `sql-database-designer`, `migration-planner`, `observability-reviewer`, `release-coordinator`, and `web-designer`
110
+ ### What files it creates
111
+
112
+ Running `united-we-stand install` installs:
119
113
 
120
- The workflow is mainly used in chat after installation:
114
+ - the framework docs under `.united-we-stand/`
115
+ - editor/agent pointer files such as:
116
+ - `AGENTS.md`
117
+ - `.github/copilot-instructions.md`
118
+ - `.agents/workflows/united-we-stand.md`
119
+ - `.cursor/rules/united-we-stand.mdc`
120
+
121
+ It also installs the framework agents, including:
122
+
123
+ - numbered framework agents:
124
+ - `0-status-checker`
125
+ - `1-initializer`
126
+ - `2-planner`
127
+ - `3-designer`
128
+ - `4-implementer`
129
+ - `5-code-reviewer`
130
+ - `6-finalizer`
131
+ - standalone specialist agents:
132
+ - `debugger`
133
+ - `documentation-writer`
134
+ - `project-manager`
135
+ - `refactorer`
136
+ - `test-strategist`
137
+ - `performance-reviewer`
138
+ - `accessibility-reviewer`
139
+ - `api-contract-writer`
140
+ - `data-modeler`
141
+ - `sql-database-designer`
142
+ - `migration-planner`
143
+ - `observability-reviewer`
144
+ - `release-coordinator`
145
+ - `web-designer`
146
+
147
+ The workflow is used in chat after installation. The framework steps are as follows:
121
148
 
122
149
  1. `1-initializer`: `AGENTS.md initialize this branch for adding OAuth login`
123
150
  2. `2-planner`: `plan this feature`
@@ -126,10 +153,14 @@ The workflow is mainly used in chat after installation:
126
153
  5. `5-code-reviewer`: `do a code review`
127
154
  6. `6-finalizer`: `wrap this up`
128
155
 
129
- `0-status-checker` is a routing and validation stage, not a delivery stage. Example: `what's my status`
156
+ `0-status-checker` is a routing and validation stage, not a delivery stage. Examples: `what's my status`, `what is the current status of united-we-stand`
157
+
158
+ All of those steps are called in the chat, and do not need to be referenced explicitly after initialization. Simple prompts such as `lets move to the next step`, `next step`, or `do the next step` should move the AI framework to the next numbered stage.
159
+ If a request sounds like it is asking for multiple stages at once, united-we-stand should explain that it only runs one stage at a time, suggest the next recommended numbered stage first, and ask the user to confirm one single stage to run now.
130
160
 
131
161
  For the most reliable initialization bootstrap, explicitly reference an installed framework file in the prompt, for example `.united-we-stand/README.md initialize this` or `AGENTS.md init the following`. Also, indicate at the end to only do the initialization step.
132
162
  In normal chat usage, the AI should create branch memory during initialization, follow the numbered workflow stages, and use standalone agents only when the task calls for specialized help.
163
+ When initialization is requested, the AI should always do a fresh live check of the current git branch before creating branch memory. It should not reuse an earlier branch check, earlier status output, or remembered branch context from the same chat as the initialization target.
133
164
 
134
165
  After the workflow is initialized, each stage writes or updates its branch file as follows:
135
166
 
@@ -143,388 +174,130 @@ After the workflow is initialized, each stage writes or updates its branch file
143
174
  | `5-code-reviewer` | `05-code-review.md` | Quality, maintainability, security, and review findings |
144
175
  | `6-finalizer` | `06-finalization.md` | Final summary, uncaptured changes, doc updates, and closure confirmation |
145
176
 
146
- # Instructions to generate a new package
147
-
148
- ## Local Development
149
-
150
- Install dependencies:
151
-
152
- ```bash
153
- npm install
154
- ```
155
-
156
- Build the package:
157
-
158
- ```bash
159
- npm run build
160
- ```
161
-
162
- Run unit/integration tests:
177
+ Each stage document can be updated later, either manually or by asking the agent in the chat, if the work changes or the plan evolves. When moving to the next stage, the AI should use the latest version of those written documents as the main source of truth, instead of depending only on the chat.
163
178
 
164
- ```bash
165
- npm test
166
- ```
167
-
168
- Run built-CLI smoke tests:
169
-
170
- ```bash
171
- npm run test:e2e
172
- ```
173
-
174
- ## Source Of Truth Areas
175
-
176
- - framework runtime assets: `.united-we-stand/**`
177
- - CLI behavior: `src/commands/**` and `src/lib/**`
178
- - package metadata: `package.json`
179
- - publish preparation for GitHub Packages: `scripts/prepare-github-publish.mjs`
180
-
181
- ## Installed Editor Integration Files
182
-
183
- When users run `united-we-stand install`, the framework also installs lightweight editor/agent integration pointers that redirect tools back to the root `AGENTS.md` file instead of duplicating rules.
184
-
185
- Installed pointer files:
186
-
187
- - `.github/copilot-instructions.md`
188
- - `.agents/workflows/united-we-stand.md`
189
- - `.cursor/rules/united-we-stand.mdc`
190
-
191
- ## Publish Targets
192
-
193
- This repository is prepared for two scoped publish targets.
194
-
195
- Current examples in this repository:
179
+ ### What safety/destructive behavior exists
196
180
 
197
- - public npm package: `@rudinmax87/united-we-stand`
198
- - GitHub Packages package: `@mrudinal/united-we-stand`
181
+ The framework is designed to install into the target repository and update its own managed framework files.
199
182
 
200
- If you adapt this publish flow for your own fork or package, replace those scopes with your own npm scope and GitHub owner scope.
183
+ Important behavior to know:
201
184
 
202
- Because the required scopes are different, the repository uses:
203
-
204
- - the root `package.json` for npm publishing
205
- - a generated temporary artifact for GitHub Packages publishing
206
-
207
- ## Build The Publish Artifact
208
-
209
- When you publish to npm, you are publishing the package artifact generated from this repository, not a Docker image.
210
-
211
- The npm package artifact for this repository consists of:
212
-
213
- - compiled CLI output
214
- - `.united-we-stand/**`
215
- - `README.md`
216
- - `LICENSE`
217
-
218
- Those shipped files are defined in `package.json` under `files`.
219
-
220
- If you want to inspect the package tarball locally before publishing, run:
221
-
222
- ```bash
223
- npm pack
224
- ```
185
+ - `united-we-stand install` writes or updates framework-related files in the repository
225
186
 
226
- That creates a local `.tgz` archive containing the exact npm package contents that would be published from the root package.
187
+ - `united-we-stand install --force` resets the installed framework files under `.united-we-stand/` back to the package defaults
227
188
 
228
- ## Publish To Scoped npm
189
+ - `branch-init --force` is intended to reset the current branch workflow memory for the resolved branch folder under `.spec-driven/`
229
190
 
230
- This repository is currently configured to publish the root package as:
191
+ - the install command may update pointer files such as `AGENTS.md` and `.github/copilot-instructions.md` so supported tools are redirected to the installed framework
231
192
 
232
- - `@rudinmax87/united-we-stand`
193
+ - the CLI prints a suggestion to star the source repository after install if the framework was helpful
233
194
 
234
- If you are publishing your own scoped variant, replace that name with your own npm scope and package name.
195
+ The install command:
235
196
 
236
- ### Requirements
197
+ - does not call the GitHub API for starring
237
198
 
238
- Before publishing to npm, make sure all of the following are true:
199
+ - does not use the `gh` CLI for starring
239
200
 
240
- - you have Node.js 18+ installed
241
- - you have npm installed
242
- - you have an npm account
243
- - your npm account has access to the package scope you plan to publish under
244
- - you are logged in with the npm CLI
245
- - the package `version` in `package.json` is the version you want to publish
246
- - the package builds and tests pass locally
201
+ - does not read GitHub auth tokens for starring
247
202
 
248
- Optional but recommended checks:
203
+ - does not modify the user's GitHub account in any way
204
+ As with any repository-writing tool, review changes before committing them, especially when using `--force`.
249
205
 
250
- - confirm the current npm user with `npm whoami`
251
- - confirm the target registry with `npm config get registry`
252
- - inspect the tarball with `npm pack`
206
+ ### One simple example flow
253
207
 
254
- ### Step-by-step
208
+ A typical workflow looks like this:
255
209
 
256
- #### 1. Install dependencies
210
+ 1. Install the package globally:
257
211
 
258
212
  ```bash
259
- npm install
260
- ```
261
-
262
- #### 2. Build the package
263
-
264
- ```bash
265
- npm run build
266
- ```
267
-
268
- #### 3. Run the test suite
269
-
270
- ```bash
271
- npm test
272
- npm run test:e2e
273
- ```
274
-
275
- #### 4. Confirm the package version and scoped name
276
-
277
- Check `package.json` and confirm:
278
-
279
- - `name` is the package name you intend to publish
280
- - `version` is the release version you want to publish
281
-
282
- For this repository today, the configured name is `@rudinmax87/united-we-stand`.
283
-
284
- #### 5. Log in to npm
285
-
286
- ```bash
287
- npm login
288
- ```
289
-
290
- If you want to verify the authenticated user:
291
-
292
- ```bash
293
- npm whoami
294
- ```
295
-
296
- #### 6. Optionally build the publish tarball locally
297
-
298
- ```bash
299
- npm pack
300
- ```
301
-
302
- This lets you inspect the exact package contents before publishing.
303
-
304
- #### 7. Publish the scoped package
305
-
306
- ```bash
307
- npm publish --access public
308
- ```
309
-
310
- The root `package.json` already includes:
311
-
312
- - scoped package name for this repository
313
- - `publishConfig.access = public`
314
-
315
- So `npm publish` is usually enough, but `npm publish --access public` makes the intended access mode explicit for a scoped public package.
316
-
317
- ### Quick publish command sequence
318
-
319
- ```bash
320
- npm install
321
- npm run build
322
- npm test
323
- npm run test:e2e
324
- npm login
325
- npm whoami
326
- npm pack
327
- npm publish --access public
328
- ```
329
-
330
- ## Publish To GitHub Packages
331
-
332
- This repository can also be published to GitHub Packages as:
333
-
334
- - `@mrudinal/united-we-stand`
335
-
336
- GitHub Packages for npm uses:
337
-
338
- - registry: `https://npm.pkg.github.com`
339
- - scoped package name: `@mrudinal/united-we-stand`
340
-
341
- Treat `@mrudinal` as the current example owner scope for this repository. If you publish from your own fork or organization, replace it with your own GitHub Packages scope.
342
-
343
- ### Requirements
344
-
345
- Before publishing to GitHub Packages, make sure all of the following are true:
346
-
347
- - you have Node.js 18+ and npm installed
348
- - you have a GitHub account with access to the repository that owns the package
349
- - you have a GitHub `personal access token (classic)`
350
- - that token has at least:
351
- - `write:packages`
352
- - `read:packages`
353
- - you are authenticated to `https://npm.pkg.github.com`
354
- - the package builds and tests pass locally
355
-
356
- Important:
357
-
358
- - GitHub Packages for npm currently uses `personal access token (classic)` authentication
359
- - for npm CLI v9+, GitHub recommends `--auth-type=legacy` when logging in from the command line
360
-
361
- ### Step-by-step
362
-
363
- #### 1. Build and validate the package
364
-
365
- ```bash
366
- npm install
367
- npm run build
368
- npm test
369
- npm run test:e2e
370
- ```
371
-
372
- #### 2. Create a GitHub personal access token (classic)
373
-
374
- Create a token in GitHub with:
375
-
376
- - `write:packages`
377
- - `read:packages`
378
-
379
- If you also want to delete packages later, add:
380
-
381
- - `delete:packages`
382
-
383
- #### 3. Authenticate npm to GitHub Packages
384
-
385
- You can authenticate in either of these ways.
386
-
387
- Option A: add your token to `~/.npmrc`
388
-
389
- ```ini
390
- //npm.pkg.github.com/:_authToken=YOUR_GITHUB_PAT_CLASSIC
391
- ```
392
-
393
- Option B: log in with npm
394
-
395
- ```bash
396
- npm login --scope=@YOUR_GITHUB_SCOPE --auth-type=legacy --registry=https://npm.pkg.github.com
213
+ npm install -g @rudinmax87/united-we-stand
397
214
  ```
398
215
 
399
- Example for this repository:
216
+ 2. Install the framework inside your repository:
400
217
 
401
218
  ```bash
402
- npm login --scope=@mrudinal --auth-type=legacy --registry=https://npm.pkg.github.com
219
+ united-we-stand install
403
220
  ```
404
221
 
405
- When prompted, use:
222
+ 3. In a new chat in your supported AI tool, initialize the branch:
406
223
 
407
- - Username: your GitHub username
408
- - Password: your GitHub personal access token (classic)
409
- - Email: your GitHub account email
410
-
411
- #### 4. Prepare the GitHub-scoped publish artifact
412
-
413
- ```bash
414
- npm run prepare:publish:github
224
+ ```text
225
+ AGENTS.md initialize this branch for adding OAuth login. Only do the initialization step.
415
226
  ```
416
227
 
417
- That creates:
418
-
419
- - a temporary GitHub-scoped publish artifact
420
- - a GitHub-scoped package manifest
421
- - the compiled CLI output and installed framework assets needed for publication
422
-
423
- #### 5. Inspect the generated publish artifact
424
-
425
- Confirm that these files exist:
426
-
427
- - the generated GitHub-scoped package manifest
428
- - the generated compiled CLI output
429
- - the generated `.united-we-stand/` asset copy
430
-
431
- The generated `package.json` in that folder is already configured for:
432
-
433
- - package name: `@mrudinal/united-we-stand`
434
- - registry: `https://npm.pkg.github.com`
228
+ 4. Continue through the numbered workflow stages in chat:
435
229
 
436
- #### 6. Publish from the generated folder
437
-
438
- Publish from the generated GitHub artifact directory created by `npm run prepare:publish:github`.
439
-
440
- The publish command is typically:
441
-
442
- ```bash
443
- npm publish .publish/github
230
+ ```text
231
+ plan this feature
232
+ design the architecture for this change
233
+ implement this now
234
+ do a code review
235
+ wrap this up
444
236
  ```
445
237
 
446
- Run it from the repository root after inspecting the prepared package manifest.
447
-
448
- The generated GitHub Packages artifact uses:
449
-
450
- - package name: `@mrudinal/united-we-stand`
451
- - registry: `https://npm.pkg.github.com`
238
+ 5. At any point, ask for status:
452
239
 
453
- ### Quick GitHub Packages publish sequence
454
-
455
- ```bash
456
- npm install
457
- npm run build
458
- npm test
459
- npm run test:e2e
460
- npm login --scope=@YOUR_GITHUB_SCOPE --auth-type=legacy --registry=https://npm.pkg.github.com
461
- npm run prepare:publish:github
462
- npm publish .publish/github
240
+ ```text
241
+ what is the current status of united-we-stand
463
242
  ```
464
243
 
465
- Example scope for this repository: `@mrudinal`
466
-
467
- ### Verify The GitHub Package Exists
468
-
469
- After publishing, verify the package in both the CLI and the GitHub UI.
470
-
471
- #### Verify from the CLI
472
-
473
- If you already authenticated npm to GitHub Packages, run:
244
+ `0-status-checker` is a routing and validation stage, not a delivery stage. After initialization, simple prompts such as `lets move to the next step`, `next step`, or `do the next step` should move the AI framework to the next numbered stage.
474
245
 
475
- ```bash
476
- npm view @YOUR_GITHUB_SCOPE/united-we-stand version --registry=https://npm.pkg.github.com
477
- ```
246
+ ## Creating Your Own Package
478
247
 
479
- Example for this repository:
248
+ If you want to generate and publish your own package variant of this framework, follow [the maintainer guide](https://github.com/mrudinal/united-we-stand-framework/blob/main/docs/generate-your-own-package.md).
480
249
 
481
- ```bash
482
- npm view @mrudinal/united-we-stand version --registry=https://npm.pkg.github.com
483
- ```
250
+ ## Contents in this repository
484
251
 
485
- You can also inspect more package metadata:
252
+ ### What This Repository Contains
486
253
 
487
- ```bash
488
- npm view @YOUR_GITHUB_SCOPE/united-we-stand --registry=https://npm.pkg.github.com
489
- ```
254
+ - `src/`
255
+ - CLI entrypoint, commands, and library code
256
+ - `.united-we-stand/`
257
+ - framework markdown assets that are installed into target repositories
258
+ - `tests/`
259
+ - unit, integration, and built-CLI smoke coverage
260
+ - `scripts/`
261
+ - maintainer scripts, including GitHub publish artifact preparation
262
+ - `public/`
263
+ - repository-local static assets such as the project logo used in this README
264
+ - `VERSIONS.md`
265
+ - manual package version history and release notes
490
266
 
491
- Example for this repository:
267
+ ## Repository Layout
492
268
 
493
- ```bash
494
- npm view @mrudinal/united-we-stand --registry=https://npm.pkg.github.com
269
+ ```text
270
+ repo-root/
271
+ |-- .united-we-stand/
272
+ |-- public/
273
+ |-- scripts/
274
+ |-- src/
275
+ | |-- cli.tsx
276
+ | |-- index.tsx
277
+ | |-- commands/
278
+ | `-- lib/
279
+ |-- tests/
280
+ |-- LICENSE
281
+ |-- package-lock.json
282
+ |-- package.json
283
+ |-- README.md
284
+ |-- VERSIONS.md
285
+ |-- tsconfig.json
286
+ `-- vitest.config.ts
495
287
  ```
496
288
 
497
- If the package is visible and the publish succeeded, npm will return the published version and metadata instead of a not found or auth error.
498
-
499
- #### Verify in the GitHub UI
500
-
501
- Open GitHub and check the package in the UI:
502
-
503
- 1. Go to your GitHub profile or the owning account.
504
- 2. Open the `Packages` tab.
505
- 3. Look for `united-we-stand`.
506
- 4. Open the package page and confirm:
507
- - package name matches your published scope and package name
508
- - the newly published version is listed
509
- - installation instructions and package metadata are visible
510
-
511
- For this repository today, the example package name is `@mrudinal/united-we-stand`.
289
+ # License
512
290
 
513
- You can also check the repository sidebar for the linked package if GitHub associates the package with your repository.
291
+ This project is licensed under the **MIT License**.
514
292
 
515
- ### Notes
293
+ That means you may use it, copy it, modify it, merge it, publish it, distribute it, sublicense it, and/or sell copies of it, subject only to the conditions of the MIT License itself.
516
294
 
517
- - publish to npmjs.com and publish to GitHub Packages are separate flows
518
- - the root package publishes to npm as `@rudinmax87/united-we-stand`
519
- - the generated temporary GitHub artifact publishes to GitHub Packages as `@mrudinal/united-we-stand`
520
- - replace those example scopes with your own if you publish from a different owner account or fork
521
- - if authentication fails during GitHub Packages publish, re-check that your token is a `personal access token (classic)` with `write:packages`
295
+ Those MIT conditions are:
522
296
 
523
- ## License
297
+ 1. The copyright notice must be included in copies or substantial portions of the software.
298
+ 2. The software is provided **as is**, without warranty of any kind.
524
299
 
525
- This project is **open source** under the **MIT License**. You can use it, modify it, fork it, and build on it freely — for personal, commercial, or any other purpose — with no restrictions and no fees.
526
-
527
- **The only requirement when publishing a derived framework, package, or tool** is to credit the original: include the author username, the package name and version your work is based on, and the repository URL in your credits, and star the source repository. That's it.
300
+ There are **no additional legal restrictions beyond MIT**.
528
301
 
529
302
  See the [LICENSE](./LICENSE) file for the full legal text.
530
303
 
@@ -544,7 +317,7 @@ See the [LICENSE](./LICENSE) file for the full legal text.
544
317
 
545
318
  ### Community Terms
546
319
 
547
- Project norms and the one hard requirement for derived works are described below.
320
+ The following are **community requests and project norms**, not additional legal license conditions.
548
321
 
549
322
  #### Public Use and Participation
550
323
 
@@ -555,32 +328,26 @@ This framework is public and free for anyone to use, evaluate, and deploy. You a
555
328
  - **Bug fixes take priority over new features.** The stability and correctness of the framework model comes before expanding its scope. A broken workflow rule or incorrect CLI behavior will be addressed before a new agent or command is added.
556
329
  - **Feature requests are accepted as issues.** If you have a feature idea, open an issue. There is no guarantee of implementation, but well-reasoned requests are considered.
557
330
 
558
- #### Derived Works and Attribution (required)
559
-
560
- This is the one condition that applies when publishing a derived work. If you create a new framework, package, tool, or product that is substantially based on or derived from `united-we-stand`, two things are required:
561
-
562
- 1. **Credit is required.** Your project's README, documentation, or credits section must include all of the following:
563
-
564
- | Field | Required value |
565
- |---|---|
566
- | Author / maintainer username | `mrudinal` |
567
- | Package name and version | `@rudinmax87/united-we-stand@<version you based your work on>` |
568
- | Source repository URL | `https://github.com/mrudinal/united-we-stand-framework` |
331
+ #### Derived Works and Attribution (requested, not required)
569
332
 
570
- Minimum acceptable credit format:
333
+ If you publish a framework, package, tool, or product that is substantially based on or inspired by `united-we-stand`, attribution is appreciated.
571
334
 
572
- ```
573
- Based on @rudinmax87/united-we-stand@<version> by mrudinal
574
- https://github.com/mrudinal/united-we-stand-framework
575
- ```
335
+ Suggested credit information:
576
336
 
577
- The version must be the specific version (e.g. `0.1.0`) your derived work was built from, not a range or `latest`.
337
+ | Field | Suggested value |
338
+ |---|---|
339
+ | Author / maintainer username | `mrudinal` |
340
+ | Package name and version | `@rudinmax87/united-we-stand@<version you based your work on>` |
341
+ | Source repository URL | `https://github.com/mrudinal/united-we-stand-framework` |
578
342
 
579
- 2. **The source repository must be starred.** Star [github.com/mrudinal/united-we-stand-framework](https://github.com/mrudinal/united-we-stand-framework) before or at the time of publishing your derived work. This is a visibility courtesy that costs nothing and is the minimum acknowledgment expected.
343
+ Suggested credit format:
580
344
 
581
- These attribution requirements apply to derived frameworks and distributed packages. They do not apply to installing and using the package inside your own project, which is unrestricted.
345
+ ```text
346
+ Based on @rudinmax87/united-we-stand@<version> by mrudinal
347
+ https://github.com/mrudinal/united-we-stand-framework
348
+ ```
582
349
 
583
- #### Versioning
350
+ # Versioning
584
351
 
585
352
  This project follows **Semantic Versioning** (`MAJOR.MINOR.PATCH`):
586
353
 
@@ -590,6 +357,6 @@ This project follows **Semantic Versioning** (`MAJOR.MINOR.PATCH`):
590
357
 
591
358
  You can safely pin a minor version (e.g., `^0.1.0`) and expect patch updates to be non-breaking within that range.
592
359
 
593
- #### No Warranty
360
+ # No Warranty
594
361
 
595
362
  This software is provided as-is. The MIT License explicitly disclaims all warranties. Use it in production at your own discretion. Bugs will be addressed but there is no SLA or guaranteed response time.