@semacode/cli 3.8.1 → 3.8.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/LICENSE +39 -39
- package/README.md +119 -119
- package/dist/iaPrompts.js +11 -11
- package/dist/index.part02.js +21 -21
- package/dist/index.part07.js +24 -24
- package/dist/initCommand.js +1 -1
- package/dist/initTemplatesBase.js +84 -84
- package/docs/README.md +15 -15
- package/docs/ai-onboarding.md +81 -81
- package/docs/cli.md +197 -197
- package/docs/deploy.md +54 -54
- package/docs/documentation.md +11 -11
- package/docs/drift-cache.md +108 -108
- package/docs/getting-started.md +82 -82
- package/docs/repositories.md +60 -60
- package/docs/rollback.md +38 -38
- package/docs/security.md +54 -54
- package/docs/sistemas-interativos.md +27 -27
- package/docs/support.md +8 -8
- package/docs/testing.md +123 -123
- package/docs/vocabulary.md +29 -29
- package/exemplos/express_crud.sema +139 -139
- package/exemplos/fastify_crud.sema +146 -146
- package/exemplos/koa_crud.sema +95 -95
- package/package.json +4 -4
- package/scripts/postinstall.mjs +148 -148
- package/skills/sema/SKILL.md +199 -199
package/docs/drift-cache.md
CHANGED
|
@@ -1,108 +1,108 @@
|
|
|
1
|
-
# Drift Cache And Query Evidence
|
|
2
|
-
|
|
3
|
-
Sema exposes three drift modes, but the `none` mode intentionally means
|
|
4
|
-
different things for direct drift execution and for query commands. The
|
|
5
|
-
defaults preserve honest, low-cost queries while keeping an explicit drift run
|
|
6
|
-
fresh by default.
|
|
7
|
-
|
|
8
|
-
| Mode | `sema drift --cache <mode>` | `sema resumo --drift <mode>` / `sema inspecionar --drift <mode>` |
|
|
9
|
-
| --- | --- | --- |
|
|
10
|
-
| `none` | Runs drift without reading or writing persistent cache. | Skips drift analysis. This is the query default. |
|
|
11
|
-
| `cache` | Reuses a valid cache entry; otherwise recalculates and publishes a new entry. | Runs drift with the same reuse-or-recalculate behavior. |
|
|
12
|
-
| `fresh` | Does not reuse a prior hit, recalculates, and publishes a fresh entry. This is the direct drift default. | Runs drift from fresh inputs without reusing prior extraction data, then publishes the resulting entry. |
|
|
13
|
-
|
|
14
|
-
Use `--cache none` when a direct analysis must leave no persistent cache access.
|
|
15
|
-
Use `--drift none` when a summary or inspection should not perform drift at all.
|
|
16
|
-
The two forms are not interchangeable.
|
|
17
|
-
|
|
18
|
-
## Honest Query Evidence
|
|
19
|
-
|
|
20
|
-
`sema resumo` and `sema inspecionar` default to `--drift none`. Their JSON
|
|
21
|
-
payload includes an `analiseDrift` envelope that makes the omitted evaluation
|
|
22
|
-
explicit:
|
|
23
|
-
|
|
24
|
-
```json
|
|
25
|
-
{
|
|
26
|
-
"analiseDrift": {
|
|
27
|
-
"modo": "none",
|
|
28
|
-
"executada": false,
|
|
29
|
-
"sucesso": null,
|
|
30
|
-
"cache": null
|
|
31
|
-
},
|
|
32
|
-
"scoreDrift": null,
|
|
33
|
-
"confiancaGeral": null
|
|
34
|
-
}
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
The surrounding payload varies by command. A human-readable `aviso` or
|
|
38
|
-
`avisos` entry explains why drift was not evaluated. Drift-derived framework,
|
|
39
|
-
route, surface, bridge, and module implementation evidence is also `null` when
|
|
40
|
-
applicable. In this context, `null` means **not evaluated**; it must never be
|
|
41
|
-
interpreted as zero, empty, passing, or absent drift.
|
|
42
|
-
|
|
43
|
-
Request `--drift cache` or `--drift fresh` when a query needs evaluated drift
|
|
44
|
-
evidence. In that case, `payload.analiseDrift.sucesso` is `true` or `false`, and a
|
|
45
|
-
failed requested analysis makes the command exit nonzero instead of hiding the
|
|
46
|
-
failure behind a successful query response.
|
|
47
|
-
|
|
48
|
-
## External Cache Location
|
|
49
|
-
|
|
50
|
-
Persistent drift cache is stored outside the governed workspace:
|
|
51
|
-
|
|
52
|
-
| Platform | Cache root |
|
|
53
|
-
| --- | --- |
|
|
54
|
-
| Windows | `%LOCALAPPDATA%\Sema\Cache`, falling back to `%USERPROFILE%\AppData\Local\Sema\Cache` |
|
|
55
|
-
| macOS | `~/Library/Caches/Sema` |
|
|
56
|
-
| Linux and other Unix systems | `$XDG_CACHE_HOME/sema`, falling back to `~/.cache/sema` |
|
|
57
|
-
|
|
58
|
-
Drift entries live below `drift/v3/workspaces/<opaque-id>/objects/` inside that
|
|
59
|
-
root. Public output represents such paths as `$SEMA_CACHE/drift/v3/...`.
|
|
60
|
-
`$SEMA_CACHE` is a safe display placeholder, not a promise that an environment
|
|
61
|
-
variable with that name exists, and Sema does not expose the real user cache
|
|
62
|
-
path.
|
|
63
|
-
|
|
64
|
-
Sema never writes persistent drift cache inside the repository, `.sema`,
|
|
65
|
-
`.tmp`, generated project folders, or any other workspace location.
|
|
66
|
-
|
|
67
|
-
## Authority And Recovery
|
|
68
|
-
|
|
69
|
-
The cache is an acceleration layer, not governance evidence and not a source of
|
|
70
|
-
truth. Contracts, source files, the active analysis plan, and the validated
|
|
71
|
-
result remain authoritative.
|
|
72
|
-
|
|
73
|
-
- A corrupt or incompatible entry is treated as a recoverable miss: Sema
|
|
74
|
-
recalculates instead of trusting it.
|
|
75
|
-
- If external cache storage is unavailable, analysis continues by
|
|
76
|
-
recalculating; cache persistence does not become a governance blocker.
|
|
77
|
-
- `cache` may reuse only a valid entry for the current workspace and inputs.
|
|
78
|
-
- `fresh` never reuses cached extraction data before analysis. Publication may
|
|
79
|
-
read and validate an existing content-addressed winner to preserve CAS
|
|
80
|
-
integrity without changing the freshly calculated result.
|
|
81
|
-
- Direct `none` performs no persistent cache reads or writes.
|
|
82
|
-
|
|
83
|
-
These rules keep cache failures from hiding drift and keep the governed
|
|
84
|
-
workspace free of machine-local state.
|
|
85
|
-
|
|
86
|
-
## Semantic Integrity And Trust Limit
|
|
87
|
-
|
|
88
|
-
The reusable payload stores canonical per-extractor indices. It does not store
|
|
89
|
-
`todosSimbolos`, route aggregates, resource aggregates, or known-file
|
|
90
|
-
aggregates as independent sources. Sema derives those values again after a
|
|
91
|
-
cache entry is restored, so a redundant aggregate cannot silently override its
|
|
92
|
-
source indices.
|
|
93
|
-
|
|
94
|
-
Before accepting a hit, Sema checks exact field allowlists, relative catalog
|
|
95
|
-
paths, extractor-specific file extensions and symbol origins, consumer-surface
|
|
96
|
-
to route relationships, and derived integrity digests across symbols, routes,
|
|
97
|
-
resources, surfaces, and persistence details. Detectable structural or
|
|
98
|
-
semantic inconsistency becomes a corrupt miss, followed by a fresh in-memory
|
|
99
|
-
calculation and repair. A valid hit is therefore limited to a compatible
|
|
100
|
-
payload produced for the same CLI, schema, extractor, workspace identity, Git
|
|
101
|
-
HEAD, plan, configuration, contracts, and content-digested members.
|
|
102
|
-
|
|
103
|
-
These SHA-256 digests detect corruption and incoherent rewriting; they do not
|
|
104
|
-
authenticate a hostile process running as the same operating-system user. Such
|
|
105
|
-
a process can read the implementation and rewrite both data and checksums. The
|
|
106
|
-
external cache is not a security boundary, a signature, or final evidence.
|
|
107
|
-
Use `--cache fresh` for closure and retain stronger evidence outside the local
|
|
108
|
-
user cache when the threat model includes local-user compromise.
|
|
1
|
+
# Drift Cache And Query Evidence
|
|
2
|
+
|
|
3
|
+
Sema exposes three drift modes, but the `none` mode intentionally means
|
|
4
|
+
different things for direct drift execution and for query commands. The
|
|
5
|
+
defaults preserve honest, low-cost queries while keeping an explicit drift run
|
|
6
|
+
fresh by default.
|
|
7
|
+
|
|
8
|
+
| Mode | `sema drift --cache <mode>` | `sema resumo --drift <mode>` / `sema inspecionar --drift <mode>` |
|
|
9
|
+
| --- | --- | --- |
|
|
10
|
+
| `none` | Runs drift without reading or writing persistent cache. | Skips drift analysis. This is the query default. |
|
|
11
|
+
| `cache` | Reuses a valid cache entry; otherwise recalculates and publishes a new entry. | Runs drift with the same reuse-or-recalculate behavior. |
|
|
12
|
+
| `fresh` | Does not reuse a prior hit, recalculates, and publishes a fresh entry. This is the direct drift default. | Runs drift from fresh inputs without reusing prior extraction data, then publishes the resulting entry. |
|
|
13
|
+
|
|
14
|
+
Use `--cache none` when a direct analysis must leave no persistent cache access.
|
|
15
|
+
Use `--drift none` when a summary or inspection should not perform drift at all.
|
|
16
|
+
The two forms are not interchangeable.
|
|
17
|
+
|
|
18
|
+
## Honest Query Evidence
|
|
19
|
+
|
|
20
|
+
`sema resumo` and `sema inspecionar` default to `--drift none`. Their JSON
|
|
21
|
+
payload includes an `analiseDrift` envelope that makes the omitted evaluation
|
|
22
|
+
explicit:
|
|
23
|
+
|
|
24
|
+
```json
|
|
25
|
+
{
|
|
26
|
+
"analiseDrift": {
|
|
27
|
+
"modo": "none",
|
|
28
|
+
"executada": false,
|
|
29
|
+
"sucesso": null,
|
|
30
|
+
"cache": null
|
|
31
|
+
},
|
|
32
|
+
"scoreDrift": null,
|
|
33
|
+
"confiancaGeral": null
|
|
34
|
+
}
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
The surrounding payload varies by command. A human-readable `aviso` or
|
|
38
|
+
`avisos` entry explains why drift was not evaluated. Drift-derived framework,
|
|
39
|
+
route, surface, bridge, and module implementation evidence is also `null` when
|
|
40
|
+
applicable. In this context, `null` means **not evaluated**; it must never be
|
|
41
|
+
interpreted as zero, empty, passing, or absent drift.
|
|
42
|
+
|
|
43
|
+
Request `--drift cache` or `--drift fresh` when a query needs evaluated drift
|
|
44
|
+
evidence. In that case, `payload.analiseDrift.sucesso` is `true` or `false`, and a
|
|
45
|
+
failed requested analysis makes the command exit nonzero instead of hiding the
|
|
46
|
+
failure behind a successful query response.
|
|
47
|
+
|
|
48
|
+
## External Cache Location
|
|
49
|
+
|
|
50
|
+
Persistent drift cache is stored outside the governed workspace:
|
|
51
|
+
|
|
52
|
+
| Platform | Cache root |
|
|
53
|
+
| --- | --- |
|
|
54
|
+
| Windows | `%LOCALAPPDATA%\Sema\Cache`, falling back to `%USERPROFILE%\AppData\Local\Sema\Cache` |
|
|
55
|
+
| macOS | `~/Library/Caches/Sema` |
|
|
56
|
+
| Linux and other Unix systems | `$XDG_CACHE_HOME/sema`, falling back to `~/.cache/sema` |
|
|
57
|
+
|
|
58
|
+
Drift entries live below `drift/v3/workspaces/<opaque-id>/objects/` inside that
|
|
59
|
+
root. Public output represents such paths as `$SEMA_CACHE/drift/v3/...`.
|
|
60
|
+
`$SEMA_CACHE` is a safe display placeholder, not a promise that an environment
|
|
61
|
+
variable with that name exists, and Sema does not expose the real user cache
|
|
62
|
+
path.
|
|
63
|
+
|
|
64
|
+
Sema never writes persistent drift cache inside the repository, `.sema`,
|
|
65
|
+
`.tmp`, generated project folders, or any other workspace location.
|
|
66
|
+
|
|
67
|
+
## Authority And Recovery
|
|
68
|
+
|
|
69
|
+
The cache is an acceleration layer, not governance evidence and not a source of
|
|
70
|
+
truth. Contracts, source files, the active analysis plan, and the validated
|
|
71
|
+
result remain authoritative.
|
|
72
|
+
|
|
73
|
+
- A corrupt or incompatible entry is treated as a recoverable miss: Sema
|
|
74
|
+
recalculates instead of trusting it.
|
|
75
|
+
- If external cache storage is unavailable, analysis continues by
|
|
76
|
+
recalculating; cache persistence does not become a governance blocker.
|
|
77
|
+
- `cache` may reuse only a valid entry for the current workspace and inputs.
|
|
78
|
+
- `fresh` never reuses cached extraction data before analysis. Publication may
|
|
79
|
+
read and validate an existing content-addressed winner to preserve CAS
|
|
80
|
+
integrity without changing the freshly calculated result.
|
|
81
|
+
- Direct `none` performs no persistent cache reads or writes.
|
|
82
|
+
|
|
83
|
+
These rules keep cache failures from hiding drift and keep the governed
|
|
84
|
+
workspace free of machine-local state.
|
|
85
|
+
|
|
86
|
+
## Semantic Integrity And Trust Limit
|
|
87
|
+
|
|
88
|
+
The reusable payload stores canonical per-extractor indices. It does not store
|
|
89
|
+
`todosSimbolos`, route aggregates, resource aggregates, or known-file
|
|
90
|
+
aggregates as independent sources. Sema derives those values again after a
|
|
91
|
+
cache entry is restored, so a redundant aggregate cannot silently override its
|
|
92
|
+
source indices.
|
|
93
|
+
|
|
94
|
+
Before accepting a hit, Sema checks exact field allowlists, relative catalog
|
|
95
|
+
paths, extractor-specific file extensions and symbol origins, consumer-surface
|
|
96
|
+
to route relationships, and derived integrity digests across symbols, routes,
|
|
97
|
+
resources, surfaces, and persistence details. Detectable structural or
|
|
98
|
+
semantic inconsistency becomes a corrupt miss, followed by a fresh in-memory
|
|
99
|
+
calculation and repair. A valid hit is therefore limited to a compatible
|
|
100
|
+
payload produced for the same CLI, schema, extractor, workspace identity, Git
|
|
101
|
+
HEAD, plan, configuration, contracts, and content-digested members.
|
|
102
|
+
|
|
103
|
+
These SHA-256 digests detect corruption and incoherent rewriting; they do not
|
|
104
|
+
authenticate a hostile process running as the same operating-system user. Such
|
|
105
|
+
a process can read the implementation and rewrite both data and checksums. The
|
|
106
|
+
external cache is not a security boundary, a signature, or final evidence.
|
|
107
|
+
Use `--cache fresh` for closure and retain stronger evidence outside the local
|
|
108
|
+
user cache when the threat model includes local-user compromise.
|
package/docs/getting-started.md
CHANGED
|
@@ -1,82 +1,82 @@
|
|
|
1
|
-
# Installation And First Use
|
|
2
|
-
|
|
3
|
-
Sema is installed and used as a local CLI.
|
|
4
|
-
|
|
5
|
-
```bash
|
|
6
|
-
npm install -g @semacode/cli
|
|
7
|
-
sema skill status --json
|
|
8
|
-
```
|
|
9
|
-
|
|
10
|
-
The global package creates an absolute launcher under `~/.sema/bin`, installs
|
|
11
|
-
the bundled skill in `~/.agents/skills/sema`, and mirrors it to
|
|
12
|
-
`~/.claude/skills/sema` only when Claude is already present. Open a new task so
|
|
13
|
-
the updated skill catalog is loaded. Installing or updating the global CLI does
|
|
14
|
-
not authorize Sema adoption in the current workspace: informational requests
|
|
15
|
-
stay read-only, and implementation requires explicit adoption authorization.
|
|
16
|
-
After an authorized bootstrap, `AGENTS.md` becomes the automatic protocol for
|
|
17
|
-
subsequent tasks.
|
|
18
|
-
|
|
19
|
-
Then verify the local engine:
|
|
20
|
-
|
|
21
|
-
```bash
|
|
22
|
-
sema --version
|
|
23
|
-
sema resumo --drift none
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
The CLI is ready when `sema --version` succeeds. No Sema login, user
|
|
27
|
-
authorization, activation key, product-license check, token, credits, billing
|
|
28
|
-
service, or control panel is involved.
|
|
29
|
-
|
|
30
|
-
The skill handles first contact with a project that does not yet have Sema. It
|
|
31
|
-
only bootstraps the local CLI and generates the repository's `AGENTS.md`; that
|
|
32
|
-
file becomes the automatic workspace protocol afterward. The npm lifecycle does
|
|
33
|
-
not install plugins or touch plugin caches.
|
|
34
|
-
|
|
35
|
-
If the install used `--ignore-scripts`, run `sema skill sync --json`. If the
|
|
36
|
-
shell cannot resolve the npm shim, use `~/.sema/bin/sema` on macOS or Linux. On
|
|
37
|
-
Windows, PowerShell resolves `sema.ps1` from `PATH`, `cmd.exe` resolves
|
|
38
|
-
`sema.cmd`, and the robust PowerShell fallback is:
|
|
39
|
-
|
|
40
|
-
```powershell
|
|
41
|
-
& "$env:SystemRoot\System32\WindowsPowerShell\v1.0\powershell.exe" -NoLogo -NoProfile -NonInteractive -ExecutionPolicy Bypass -File "$HOME\.sema\bin\sema-managed.ps1" --version
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
The managed fallback contains absolute Node.js and CLI paths and does not
|
|
45
|
-
depend on `PATH`.
|
|
46
|
-
|
|
47
|
-
## First Project
|
|
48
|
-
|
|
49
|
-
```bash
|
|
50
|
-
sema descobrir explicar flow.project-adoption --json
|
|
51
|
-
sema iniciar --template base
|
|
52
|
-
sema sync-codex --json
|
|
53
|
-
sema validar contratos/*.sema --json
|
|
54
|
-
sema resumo --drift none
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
Run this sequence only after explicit project-adoption authorization. The
|
|
58
|
-
`sema iniciar` command preserves existing project files and refuses symlink or
|
|
59
|
-
junction escapes. The bootstrap skill never uses `--force`; explicit overwrite
|
|
60
|
-
remains a human decision.
|
|
61
|
-
|
|
62
|
-
## Existing Project
|
|
63
|
-
|
|
64
|
-
```bash
|
|
65
|
-
sema resumo --drift none
|
|
66
|
-
sema docs-impacto --intencao "describe the change" --json
|
|
67
|
-
sema inspecionar contratos/example.sema --drift none --json
|
|
68
|
-
sema drift contratos/example.sema --escopo modulo --cache fresh --json
|
|
69
|
-
sema impacto contratos/example.sema --alvo sema.example.target --mudanca "describe the change" --json
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
`sema resumo` and `sema inspecionar` default to `--drift none`: they skip drift
|
|
73
|
-
analysis and report drift-derived evidence as `null`, meaning not evaluated.
|
|
74
|
-
Direct `sema drift` defaults to `--cache fresh`; its `--cache none` mode still
|
|
75
|
-
runs the analysis, but without reading or writing persistent cache. See
|
|
76
|
-
[Drift Cache And Query Evidence](./drift-cache.md) for the complete mode table,
|
|
77
|
-
external cache locations, and recovery behavior.
|
|
78
|
-
|
|
79
|
-
The public CLI does not require private service credentials or an external
|
|
80
|
-
request before local commands run.
|
|
81
|
-
|
|
82
|
-
Support: suporte@otimitare.
|
|
1
|
+
# Installation And First Use
|
|
2
|
+
|
|
3
|
+
Sema is installed and used as a local CLI.
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
npm install -g @semacode/cli
|
|
7
|
+
sema skill status --json
|
|
8
|
+
```
|
|
9
|
+
|
|
10
|
+
The global package creates an absolute launcher under `~/.sema/bin`, installs
|
|
11
|
+
the bundled skill in `~/.agents/skills/sema`, and mirrors it to
|
|
12
|
+
`~/.claude/skills/sema` only when Claude is already present. Open a new task so
|
|
13
|
+
the updated skill catalog is loaded. Installing or updating the global CLI does
|
|
14
|
+
not authorize Sema adoption in the current workspace: informational requests
|
|
15
|
+
stay read-only, and implementation requires explicit adoption authorization.
|
|
16
|
+
After an authorized bootstrap, `AGENTS.md` becomes the automatic protocol for
|
|
17
|
+
subsequent tasks.
|
|
18
|
+
|
|
19
|
+
Then verify the local engine:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
sema --version
|
|
23
|
+
sema resumo --drift none
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
The CLI is ready when `sema --version` succeeds. No Sema login, user
|
|
27
|
+
authorization, activation key, product-license check, token, credits, billing
|
|
28
|
+
service, or control panel is involved.
|
|
29
|
+
|
|
30
|
+
The skill handles first contact with a project that does not yet have Sema. It
|
|
31
|
+
only bootstraps the local CLI and generates the repository's `AGENTS.md`; that
|
|
32
|
+
file becomes the automatic workspace protocol afterward. The npm lifecycle does
|
|
33
|
+
not install plugins or touch plugin caches.
|
|
34
|
+
|
|
35
|
+
If the install used `--ignore-scripts`, run `sema skill sync --json`. If the
|
|
36
|
+
shell cannot resolve the npm shim, use `~/.sema/bin/sema` on macOS or Linux. On
|
|
37
|
+
Windows, PowerShell resolves `sema.ps1` from `PATH`, `cmd.exe` resolves
|
|
38
|
+
`sema.cmd`, and the robust PowerShell fallback is:
|
|
39
|
+
|
|
40
|
+
```powershell
|
|
41
|
+
& "$env:SystemRoot\System32\WindowsPowerShell\v1.0\powershell.exe" -NoLogo -NoProfile -NonInteractive -ExecutionPolicy Bypass -File "$HOME\.sema\bin\sema-managed.ps1" --version
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
The managed fallback contains absolute Node.js and CLI paths and does not
|
|
45
|
+
depend on `PATH`.
|
|
46
|
+
|
|
47
|
+
## First Project
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
sema descobrir explicar flow.project-adoption --json
|
|
51
|
+
sema iniciar --template base
|
|
52
|
+
sema sync-codex --json
|
|
53
|
+
sema validar contratos/*.sema --json
|
|
54
|
+
sema resumo --drift none
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Run this sequence only after explicit project-adoption authorization. The
|
|
58
|
+
`sema iniciar` command preserves existing project files and refuses symlink or
|
|
59
|
+
junction escapes. The bootstrap skill never uses `--force`; explicit overwrite
|
|
60
|
+
remains a human decision.
|
|
61
|
+
|
|
62
|
+
## Existing Project
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
sema resumo --drift none
|
|
66
|
+
sema docs-impacto --intencao "describe the change" --json
|
|
67
|
+
sema inspecionar contratos/example.sema --drift none --json
|
|
68
|
+
sema drift contratos/example.sema --escopo modulo --cache fresh --json
|
|
69
|
+
sema impacto contratos/example.sema --alvo sema.example.target --mudanca "describe the change" --json
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
`sema resumo` and `sema inspecionar` default to `--drift none`: they skip drift
|
|
73
|
+
analysis and report drift-derived evidence as `null`, meaning not evaluated.
|
|
74
|
+
Direct `sema drift` defaults to `--cache fresh`; its `--cache none` mode still
|
|
75
|
+
runs the analysis, but without reading or writing persistent cache. See
|
|
76
|
+
[Drift Cache And Query Evidence](./drift-cache.md) for the complete mode table,
|
|
77
|
+
external cache locations, and recovery behavior.
|
|
78
|
+
|
|
79
|
+
The public CLI does not require private service credentials or an external
|
|
80
|
+
request before local commands run.
|
|
81
|
+
|
|
82
|
+
Support: suporte@otimitare.com
|
package/docs/repositories.md
CHANGED
|
@@ -1,60 +1,60 @@
|
|
|
1
|
-
# Repository Boundary
|
|
2
|
-
|
|
3
|
-
The public Sema repository should contain only the
|
|
4
|
-
first-contact Codex skill, runtime packages, examples, tests that run locally,
|
|
5
|
-
and English documentation.
|
|
6
|
-
|
|
7
|
-
## Public
|
|
8
|
-
|
|
9
|
-
- local CLI source
|
|
10
|
-
- contract parser and validators
|
|
11
|
-
- local drift and impact tooling
|
|
12
|
-
- local code generators
|
|
13
|
-
- examples
|
|
14
|
-
- English docs
|
|
15
|
-
- local package scripts
|
|
16
|
-
- `AGENTS.md` as the official Codex entrypoint
|
|
17
|
-
- the official Sema skill as a thin bootstrap before `AGENTS.md` exists
|
|
18
|
-
- the managed absolute launcher and portable global skill bundled in npm
|
|
19
|
-
- the optional repo marketplace that exposes the same skill namespaced
|
|
20
|
-
|
|
21
|
-
## Not Public
|
|
22
|
-
|
|
23
|
-
- private or sensitive operational material
|
|
24
|
-
- real credentials, environment files, or secret inventories
|
|
25
|
-
- private project data or generated private artifacts
|
|
26
|
-
- runtime authorization, activation, billing, credit, token, or panel gates
|
|
27
|
-
- product-specific repository entrypoint files for AI clients other than Codex
|
|
28
|
-
- MCP servers, remote workspace bridges, or duplicated governance inside the
|
|
29
|
-
bootstrap skill
|
|
30
|
-
|
|
31
|
-
The portable skill may be synchronized to the canonical user-level
|
|
32
|
-
`.agents/skills` directory and a detected Claude mirror. That does not change
|
|
33
|
-
the workspace boundary: Sema still generates only `AGENTS.md` as the official
|
|
34
|
-
repository protocol and never writes into plugin caches.
|
|
35
|
-
|
|
36
|
-
The repository has one npm package factory: `npm run cli:empacotar-publica`.
|
|
37
|
-
It assembles a private stage per execution and never materializes examples,
|
|
38
|
-
runtime dependencies, or skills inside `pacotes/cli`. Direct workspace packing
|
|
39
|
-
is intentionally blocked so a second, mutable packaging path cannot drift from
|
|
40
|
-
the public artifact.
|
|
41
|
-
|
|
42
|
-
The Windows distribution uses `sema.ps1` for PowerShell `PATH` resolution,
|
|
43
|
-
`sema.cmd` for `cmd.exe`, and `sema-managed.ps1` for the PATH-independent
|
|
44
|
-
fallback invoked through the absolute system `powershell.exe`; all remain
|
|
45
|
-
inside the managed `~/.sema/bin` boundary.
|
|
46
|
-
|
|
47
|
-
The CLI must run directly against the local workspace without login, user
|
|
48
|
-
authorization, a product-license check, activation key, credits, token, billing
|
|
49
|
-
service, or control panel.
|
|
50
|
-
|
|
51
|
-
Sema is an independent product and is not affiliated with or endorsed by
|
|
52
|
-
OpenAI. Codex
|
|
53
|
-
OpenAI program or submission.
|
|
54
|
-
|
|
55
|
-
## Commercial Use
|
|
56
|
-
|
|
57
|
-
The public Sema source may not be copied, rebranded, bundled, or replicated for
|
|
58
|
-
commercial resale without written permission from OtimiTare.
|
|
59
|
-
|
|
60
|
-
Support: suporte@otimitare.
|
|
1
|
+
# Repository Boundary
|
|
2
|
+
|
|
3
|
+
The public Sema repository should contain only the local-first multi-agent CLI, the
|
|
4
|
+
first-contact Codex skill, runtime packages, examples, tests that run locally,
|
|
5
|
+
and English documentation.
|
|
6
|
+
|
|
7
|
+
## Public
|
|
8
|
+
|
|
9
|
+
- local CLI source
|
|
10
|
+
- contract parser and validators
|
|
11
|
+
- local drift and impact tooling
|
|
12
|
+
- local code generators
|
|
13
|
+
- examples
|
|
14
|
+
- English docs
|
|
15
|
+
- local package scripts
|
|
16
|
+
- `AGENTS.md` as the official Codex entrypoint
|
|
17
|
+
- the official Sema skill as a thin bootstrap before `AGENTS.md` exists
|
|
18
|
+
- the managed absolute launcher and portable global skill bundled in npm
|
|
19
|
+
- the optional repo marketplace that exposes the same skill namespaced
|
|
20
|
+
|
|
21
|
+
## Not Public
|
|
22
|
+
|
|
23
|
+
- private or sensitive operational material
|
|
24
|
+
- real credentials, environment files, or secret inventories
|
|
25
|
+
- private project data or generated private artifacts
|
|
26
|
+
- runtime authorization, activation, billing, credit, token, or panel gates
|
|
27
|
+
- product-specific repository entrypoint files for AI clients other than Codex
|
|
28
|
+
- MCP servers, remote workspace bridges, or duplicated governance inside the
|
|
29
|
+
bootstrap skill
|
|
30
|
+
|
|
31
|
+
The portable skill may be synchronized to the canonical user-level
|
|
32
|
+
`.agents/skills` directory and a detected Claude mirror. That does not change
|
|
33
|
+
the workspace boundary: Sema still generates only `AGENTS.md` as the official
|
|
34
|
+
repository protocol and never writes into plugin caches.
|
|
35
|
+
|
|
36
|
+
The repository has one npm package factory: `npm run cli:empacotar-publica`.
|
|
37
|
+
It assembles a private stage per execution and never materializes examples,
|
|
38
|
+
runtime dependencies, or skills inside `pacotes/cli`. Direct workspace packing
|
|
39
|
+
is intentionally blocked so a second, mutable packaging path cannot drift from
|
|
40
|
+
the public artifact.
|
|
41
|
+
|
|
42
|
+
The Windows distribution uses `sema.ps1` for PowerShell `PATH` resolution,
|
|
43
|
+
`sema.cmd` for `cmd.exe`, and `sema-managed.ps1` for the PATH-independent
|
|
44
|
+
fallback invoked through the absolute system `powershell.exe`; all remain
|
|
45
|
+
inside the managed `~/.sema/bin` boundary.
|
|
46
|
+
|
|
47
|
+
The CLI must run directly against the local workspace without login, user
|
|
48
|
+
authorization, a product-license check, activation key, credits, token, billing
|
|
49
|
+
service, or control panel.
|
|
50
|
+
|
|
51
|
+
Sema is an independent product and is not affiliated with or endorsed by
|
|
52
|
+
OpenAI. Proven compatibility with Claude, Codex, zCode (GLM) and Kimi is Sema's product direction, not an official
|
|
53
|
+
OpenAI program or submission.
|
|
54
|
+
|
|
55
|
+
## Commercial Use
|
|
56
|
+
|
|
57
|
+
The public Sema source may not be copied, rebranded, bundled, or replicated for
|
|
58
|
+
commercial resale without written permission from OtimiTare.
|
|
59
|
+
|
|
60
|
+
Support: suporte@otimitare.com
|
package/docs/rollback.md
CHANGED
|
@@ -1,38 +1,38 @@
|
|
|
1
|
-
# Rollback Boundary
|
|
2
|
-
|
|
3
|
-
Public rollback covers the npm CLI, managed launcher, bundled global skill, and
|
|
4
|
-
the optional Codex plugin channel.
|
|
5
|
-
|
|
6
|
-
For a failed pre-publication candidate:
|
|
7
|
-
|
|
8
|
-
1. Keep the previous tarball until the new one passes smoke tests.
|
|
9
|
-
2. Revert the plugin source, marketplace manifest, CLI source, and versions to
|
|
10
|
-
the last known-good commit.
|
|
11
|
-
3. Re-run `npm run release:preparar-publica`.
|
|
12
|
-
|
|
13
|
-
If a bad commit was already pushed, revert it with a normal Git revert and push
|
|
14
|
-
the corrective commit. Install the corrected npm version and resynchronize its
|
|
15
|
-
managed distribution:
|
|
16
|
-
|
|
17
|
-
```bash
|
|
18
|
-
npm install -g @semacode/cli@<corrected-version>
|
|
19
|
-
sema skill sync --json
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
The same sequence may install an explicitly selected previous version. The
|
|
23
|
-
installed npm version is authoritative: `sema skill sync --json` aligns the
|
|
24
|
-
runtime, managed launcher, and bundled skill to the version that is actually
|
|
25
|
-
installed. This is synchronization, not a promise to block an intentional
|
|
26
|
-
downgrade.
|
|
27
|
-
|
|
28
|
-
If the optional plugin channel was also affected, upgrade or reinstall it after
|
|
29
|
-
the corrected commit is public. Open a new task before validating the repaired
|
|
30
|
-
skill; already-open tasks keep the catalog they started with.
|
|
31
|
-
|
|
32
|
-
If a bad npm version was published, do not overwrite it. Publish a corrected
|
|
33
|
-
version and direct users to that version. Verify the final registry/GitHub state
|
|
34
|
-
with `npm run release:verificar-distribuicao`. Do not create a GitHub Release or
|
|
35
|
-
asset as a rollback shortcut while the release contract blocks that surface.
|
|
36
|
-
|
|
37
|
-
Do not publish private or sensitive operational rollback material in this
|
|
38
|
-
repository.
|
|
1
|
+
# Rollback Boundary
|
|
2
|
+
|
|
3
|
+
Public rollback covers the npm CLI, managed launcher, bundled global skill, and
|
|
4
|
+
the optional Codex plugin channel.
|
|
5
|
+
|
|
6
|
+
For a failed pre-publication candidate:
|
|
7
|
+
|
|
8
|
+
1. Keep the previous tarball until the new one passes smoke tests.
|
|
9
|
+
2. Revert the plugin source, marketplace manifest, CLI source, and versions to
|
|
10
|
+
the last known-good commit.
|
|
11
|
+
3. Re-run `npm run release:preparar-publica`.
|
|
12
|
+
|
|
13
|
+
If a bad commit was already pushed, revert it with a normal Git revert and push
|
|
14
|
+
the corrective commit. Install the corrected npm version and resynchronize its
|
|
15
|
+
managed distribution:
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npm install -g @semacode/cli@<corrected-version>
|
|
19
|
+
sema skill sync --json
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
The same sequence may install an explicitly selected previous version. The
|
|
23
|
+
installed npm version is authoritative: `sema skill sync --json` aligns the
|
|
24
|
+
runtime, managed launcher, and bundled skill to the version that is actually
|
|
25
|
+
installed. This is synchronization, not a promise to block an intentional
|
|
26
|
+
downgrade.
|
|
27
|
+
|
|
28
|
+
If the optional plugin channel was also affected, upgrade or reinstall it after
|
|
29
|
+
the corrected commit is public. Open a new task before validating the repaired
|
|
30
|
+
skill; already-open tasks keep the catalog they started with.
|
|
31
|
+
|
|
32
|
+
If a bad npm version was published, do not overwrite it. Publish a corrected
|
|
33
|
+
version and direct users to that version. Verify the final registry/GitHub state
|
|
34
|
+
with `npm run release:verificar-distribuicao`. Do not create a GitHub Release or
|
|
35
|
+
asset as a rollback shortcut while the release contract blocks that surface.
|
|
36
|
+
|
|
37
|
+
Do not publish private or sensitive operational rollback material in this
|
|
38
|
+
repository.
|