You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .agents/skills/ship/SKILL.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -66,6 +66,10 @@ When the user runs `/ship`:
66
66
# Runs every audit CI runs, concurrently, and replays the output of any that fail.
67
67
# The audit list is derived in scripts/run-audits.ts — do not hand-list audits here.
68
68
bun run check:audits || { echo"❌ audit(s) failed — do not ship";exit 1; }
69
+
# CI's "Verify docs manifest is in sync" step is not a `check:*` script, so the runner above
70
+
# does not cover it. (CI's "Security audit" `bun audit` step is `continue-on-error` — advisory
71
+
# only, not a gate — so it is deliberately not run here.)
72
+
bun run docs-manifest:check || { echo"❌ docs manifest out of sync — do not ship";exit 1; }
69
73
```
70
74
If Phase A regenerated a file, its matching `:check` in Phase B now passes trivially — that parity is the point. Do not ship with any generator or audit failing; fix the cause (never silence it) and re-run. `check:migrations` and `type-check` are covered by steps 5 and CI respectively and are not repeated here.
71
75
7.**Stage and commit** the changes with the generated message — including any files Phase A regenerated in step 6
Copy file name to clipboardExpand all lines: apps/docs/content/docs/cli/files.mdx
+51Lines changed: 51 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -108,6 +108,8 @@ Also available as `sim files folders ls`.
108
108
|`--sort-by <value>`| No | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `name`, `createdAt`, `updatedAt`. |
|`--scope <value>`| No | Which lifecycle set to list: `active` (default) returns live folders only; `archived` returns folders a recursive delete soft-deleted, which is how a caller finds a path to hand to the folder restore. Authorization is identical for both. Accepted values: `active`, `archived`. |
111
+
|`--recursive <value>`| No | Whether parentPath includes every descendant instead of direct children only. Accepted values: `true`, `1`, `yes`, `on`, `y`, `enabled`, `false`, `0`, `no`, `off`, `n`, `disabled`. |
112
+
|`--depth <value>`| No | Deepest level below parentPath to include when recursive is true. |
## Apply one exact or anchor-based edit to a text file
178
+
179
+
```bash
180
+
sim files edit <fileId> [options]
181
+
```
182
+
183
+
**Arguments**
184
+
185
+
<CommandTable>
186
+
187
+
| Argument | Required | Description |
188
+
| --- | --- | --- |
189
+
|`fileId`| Yes | File identifier. |
190
+
191
+
</CommandTable>
192
+
193
+
**Options**
194
+
195
+
<CommandTable>
196
+
197
+
| Option | Required | Description |
198
+
| --- | --- | --- |
199
+
|`--edit <json\|@file>`| Yes | One edit object: {"mode":"search_replace","search":"old","content":"new","replaceAll":false}, {"mode":"replace_between","beforeAnchor":"start line","afterAnchor":"end line","content":"new"}, {"mode":"insert_after","anchor":"line","content":"new"}, or {"mode":"delete_between","startAnchor":"first line deleted","endAnchor":"ending line kept"}. Anchored modes also accept occurrence starting at 1 (JSON, or @path / @- to read a file or stdin). |
|`--max-bytes <value>`| No | Optional ceiling on the source bytes fed to the parser, lowering but never raising the server limit. |
341
+
|`--offset <value>`| No | First line to return, 1-based. Absent starts at the first line. |
342
+
|`--limit <value>`| No | How many lines to return from `offset`. Absent reads to the end. |
313
343
314
344
</CommandTable>
315
345
@@ -355,6 +385,27 @@ sim files restore <fileId>
355
385
356
386
</CommandTable>
357
387
388
+
## Search file content
389
+
390
+
```bash
391
+
sim files search [options]
392
+
```
393
+
394
+
**Options**
395
+
396
+
<CommandTable>
397
+
398
+
| Option | Required | Description |
399
+
| --- | --- | --- |
400
+
|`--query <value>`| Yes | Regular expression, or exact text when `mode` is `exact`. |
401
+
|`--mode <value>`| No | How `query` is read. Accepted values: `exact`, `regex`. |
402
+
|`--max-results <value>`| No | Maximum matching lines to return. |
403
+
|`--folder <value...>`| No | Folders to search, by path as shown in the app; omit to search the whole workspace (space-separated, or @path / @- with one value per line; @@value for a literal leading @). |
404
+
|`--include-subfolders`| No | Whether each folder scope includes nested folders; on by default. |
405
+
|`--no-include-subfolders`| No | Send --include-subfolders as false. |
Copy file name to clipboardExpand all lines: apps/docs/content/docs/cli/reference.mdx
+55Lines changed: 55 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -788,6 +788,8 @@ Also available as `sim files folders ls`.
788
788
|`--sort-by <value>`| No | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `name`, `createdAt`, `updatedAt`. |
|`--scope <value>`| No | Which lifecycle set to list: `active` (default) returns live folders only; `archived` returns folders a recursive delete soft-deleted, which is how a caller finds a path to hand to the folder restore. Authorization is identical for both. Accepted values: `active`, `archived`. |
791
+
|`--recursive <value>`| No | Whether parentPath includes every descendant instead of direct children only. Accepted values: `true`, `1`, `yes`, `on`, `y`, `enabled`, `false`, `0`, `no`, `off`, `n`, `disabled`. |
792
+
|`--depth <value>`| No | Deepest level below parentPath to include when recursive is true. |
Apply one exact or anchor-based edit to a text file
866
+
867
+
```bash
868
+
sim files edit <fileId> [options]
869
+
```
870
+
871
+
**Arguments**
872
+
873
+
<CommandTable>
874
+
875
+
| Argument | Required | Description |
876
+
| --- | --- | --- |
877
+
|`fileId`| Yes | File identifier. |
878
+
879
+
</CommandTable>
880
+
881
+
**Options**
882
+
883
+
<CommandTable>
884
+
885
+
| Option | Required | Description |
886
+
| --- | --- | --- |
887
+
|`--edit <json\|@file>`| Yes | One edit object: {"mode":"search_replace","search":"old","content":"new","replaceAll":false}, {"mode":"replace_between","beforeAnchor":"start line","afterAnchor":"end line","content":"new"}, {"mode":"insert_after","anchor":"line","content":"new"}, or {"mode":"delete_between","startAnchor":"first line deleted","endAnchor":"ending line kept"}. Anchored modes also accept occurrence starting at 1 (JSON, or @path / @- to read a file or stdin). |
|`--max-bytes <value>`| No | Optional ceiling on the source bytes fed to the parser, lowering but never raising the server limit. |
1039
+
|`--offset <value>`| No | First line to return, 1-based. Absent starts at the first line. |
1040
+
|`--limit <value>`| No | How many lines to return from `offset`. Absent reads to the end. |
1009
1041
1010
1042
</CommandTable>
1011
1043
@@ -1055,6 +1087,29 @@ sim files restore <fileId>
1055
1087
1056
1088
</CommandTable>
1057
1089
1090
+
### sim files search
1091
+
1092
+
Search File Content
1093
+
1094
+
```bash
1095
+
sim files search [options]
1096
+
```
1097
+
1098
+
**Options**
1099
+
1100
+
<CommandTable>
1101
+
1102
+
| Option | Required | Description |
1103
+
| --- | --- | --- |
1104
+
|`--query <value>`| Yes | Regular expression, or exact text when `mode` is `exact`. |
1105
+
|`--mode <value>`| No | How `query` is read. Accepted values: `exact`, `regex`. |
1106
+
|`--max-results <value>`| No | Maximum matching lines to return. |
1107
+
|`--folder <value...>`| No | Folders to search, by path as shown in the app; omit to search the whole workspace (space-separated, or @path / @- with one value per line; @@value for a literal leading @). |
1108
+
|`--include-subfolders`| No | Whether each folder scope includes nested folders; on by default. |
1109
+
|`--no-include-subfolders`| No | Send --include-subfolders as false. |
0 commit comments