@mytechtoday/augment-extensions 0.4.0 → 0.7.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.
- package/README.md +6 -6
- package/augment-extensions/domain-rules/design/color/themes/catppuccin-latte/README.md +23 -0
- package/augment-extensions/domain-rules/design/color/themes/catppuccin-latte/module.json +26 -0
- package/augment-extensions/domain-rules/design/color/themes/catppuccin-mocha/README.md +23 -0
- package/augment-extensions/domain-rules/design/color/themes/catppuccin-mocha/module.json +26 -0
- package/augment-extensions/domain-rules/design/color/themes/dracula/README.md +23 -0
- package/augment-extensions/domain-rules/design/color/themes/dracula/module.json +26 -0
- package/augment-extensions/domain-rules/design/color/themes/gruvbox-dark/README.md +23 -0
- package/augment-extensions/domain-rules/design/color/themes/gruvbox-dark/module.json +26 -0
- package/augment-extensions/domain-rules/design/color/themes/gruvbox-light/README.md +23 -0
- package/augment-extensions/domain-rules/design/color/themes/gruvbox-light/module.json +26 -0
- package/augment-extensions/domain-rules/design/color/themes/high-contrast/README.md +27 -0
- package/augment-extensions/domain-rules/design/color/themes/high-contrast/module.json +26 -0
- package/augment-extensions/domain-rules/design/color/themes/monokai/README.md +23 -0
- package/augment-extensions/domain-rules/design/color/themes/monokai/module.json +26 -0
- package/augment-extensions/domain-rules/design/color/themes/nord/README.md +23 -0
- package/augment-extensions/domain-rules/design/color/themes/nord/module.json +26 -0
- package/augment-extensions/domain-rules/design/color/themes/one-dark/README.md +23 -0
- package/augment-extensions/domain-rules/design/color/themes/one-dark/module.json +26 -0
- package/augment-extensions/domain-rules/design/color/themes/one-light/README.md +23 -0
- package/augment-extensions/domain-rules/design/color/themes/one-light/module.json +26 -0
- package/augment-extensions/domain-rules/design/color/themes/solarized-dark/README.md +23 -0
- package/augment-extensions/domain-rules/design/color/themes/solarized-dark/module.json +26 -0
- package/augment-extensions/domain-rules/design/color/themes/solarized-light/README.md +23 -0
- package/augment-extensions/domain-rules/design/color/themes/solarized-light/module.json +26 -0
- package/augment-extensions/domain-rules/design/color/themes/tokyo-night/README.md +23 -0
- package/augment-extensions/domain-rules/design/color/themes/tokyo-night/module.json +26 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/README.md +136 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/SCHEMA-VALIDATION-REPORT.md +216 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/examples/brand-kit-example.yaml +292 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/examples/campaign-brief-example.yaml +389 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/examples/content-calendar-example.yaml +643 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/examples/email-newsletter-example.md +376 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/examples/landing-page-example.md +934 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/examples/ppc-ad-copy-example.md +301 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/examples/seo-blog-post-example.md +347 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/examples/social-media-campaign-example.md +606 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/module.json +50 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/affiliate-influencer-marketing.md +593 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/asset-management.md +418 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/brand-consistency.md +210 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/content-marketing.md +337 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/conversion-optimization.md +455 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/direct-sales.md +499 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/email-marketing.md +439 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/legal-compliance.md +227 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/ppc-advertising.md +569 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/seo-optimization.md +470 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/social-media-marketing.md +414 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/universal-marketing.md +177 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/schemas/asset-inventory.schema.json +247 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/schemas/brand-kit.schema.json +326 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/schemas/campaign-brief.schema.json +342 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/schemas/color-palette.schema.json +223 -0
- package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/schemas/content-template.schema.json +383 -0
- package/augment-extensions/workflows/beads-integration/IMPLEMENTATION-STATUS.md +145 -0
- package/augment-extensions/workflows/beads-integration/README.md +143 -0
- package/augment-extensions/workflows/beads-integration/config/defaults.json +32 -0
- package/augment-extensions/workflows/beads-integration/config/schema.json +140 -0
- package/augment-extensions/workflows/beads-integration/examples/basic-task-generation.md +293 -0
- package/augment-extensions/workflows/beads-integration/module.json +75 -0
- package/augment-extensions/workflows/beads-integration/rules/core-rules.md +219 -0
- package/augment-extensions/workflows/beads-integration/rules/effectiveness-standards.md +256 -0
- package/augment-extensions/workflows/beads-integration/rules/task-generation.md +607 -0
- package/augment-extensions/writing-standards/screenplay/README.md +135 -6
- package/augment-extensions/writing-standards/screenplay/_templates/README.md +121 -0
- package/augment-extensions/writing-standards/screenplay/_templates/genre-template.md +153 -0
- package/augment-extensions/writing-standards/screenplay/_templates/style-template.md +243 -0
- package/augment-extensions/writing-standards/screenplay/_templates/theme-template.md +213 -0
- package/augment-extensions/writing-standards/screenplay/examples/beat-sheet-example.yaml +95 -0
- package/augment-extensions/writing-standards/screenplay/examples/character-profile-example.yaml +116 -0
- package/augment-extensions/writing-standards/screenplay/examples/commercial-30sec.fountain +151 -0
- package/augment-extensions/writing-standards/screenplay/examples/independent-monologue.fountain +67 -0
- package/augment-extensions/writing-standards/screenplay/examples/news-segment.fountain +142 -0
- package/augment-extensions/writing-standards/screenplay/examples/plot-outline-example.yaml +184 -0
- package/augment-extensions/writing-standards/screenplay/examples/tv-episode-teaser.fountain +204 -0
- package/augment-extensions/writing-standards/screenplay/genres/README.md +181 -0
- package/augment-extensions/writing-standards/screenplay/genres/examples/.gitkeep +2 -0
- package/augment-extensions/writing-standards/screenplay/genres/module.json +70 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/.gitkeep +2 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/action.md +399 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/adventure.md +407 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/animation.md +293 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/biographical.md +293 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/comedy.md +401 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/documentary.md +293 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/drama.md +409 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/fantasy.md +293 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/historical.md +293 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/horror.md +268 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/musical.md +294 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/mystery.md +293 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/noir.md +294 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/romance.md +293 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/sci-fi.md +289 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/superhero.md +293 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/thriller.md +294 -0
- package/augment-extensions/writing-standards/screenplay/genres/rules/western.md +293 -0
- package/augment-extensions/writing-standards/screenplay/module.json +1 -1
- package/augment-extensions/writing-standards/screenplay/rules/aaa-hollywood-films.md +339 -0
- package/augment-extensions/writing-standards/screenplay/rules/ai-integration-testing.md +329 -0
- package/augment-extensions/writing-standards/screenplay/rules/character-development.md +169 -0
- package/augment-extensions/writing-standards/screenplay/rules/commercials.md +437 -0
- package/augment-extensions/writing-standards/screenplay/rules/dialogue-writing.md +263 -0
- package/augment-extensions/writing-standards/screenplay/rules/diversity-inclusion.md +261 -0
- package/augment-extensions/writing-standards/screenplay/rules/examples-guide.md +315 -0
- package/augment-extensions/writing-standards/screenplay/rules/formatting-validation.md +413 -0
- package/augment-extensions/writing-standards/screenplay/rules/fountain-format.md +372 -0
- package/augment-extensions/writing-standards/screenplay/rules/independent-films.md +374 -0
- package/augment-extensions/writing-standards/screenplay/rules/live-tv-productions.md +443 -0
- package/augment-extensions/writing-standards/screenplay/rules/narrative-structures.md +207 -0
- package/augment-extensions/writing-standards/screenplay/rules/news-broadcasts.md +444 -0
- package/augment-extensions/writing-standards/screenplay/rules/pacing-timing.md +331 -0
- package/augment-extensions/writing-standards/screenplay/rules/quality-review-checklist.md +334 -0
- package/augment-extensions/writing-standards/screenplay/rules/quick-reference.md +299 -0
- package/augment-extensions/writing-standards/screenplay/rules/screen-continuity.md +263 -0
- package/augment-extensions/writing-standards/screenplay/rules/streaming-content.md +412 -0
- package/augment-extensions/writing-standards/screenplay/rules/trope-management.md +370 -0
- package/augment-extensions/writing-standards/screenplay/rules/tv-series.md +374 -0
- package/augment-extensions/writing-standards/screenplay/rules/vscode-integration.md +277 -0
- package/augment-extensions/writing-standards/screenplay/rules/web-content.md +393 -0
- package/augment-extensions/writing-standards/screenplay/schemas/beat-sheet.json +332 -0
- package/augment-extensions/writing-standards/screenplay/schemas/character-profile.json +247 -0
- package/augment-extensions/writing-standards/screenplay/schemas/feature-selection.json +200 -0
- package/augment-extensions/writing-standards/screenplay/schemas/plot-outline.json +233 -0
- package/augment-extensions/writing-standards/screenplay/schemas/screenplay-config.json +245 -0
- package/augment-extensions/writing-standards/screenplay/schemas/trope-inventory.json +221 -0
- package/augment-extensions/writing-standards/screenplay/styles/README.md +159 -0
- package/augment-extensions/writing-standards/screenplay/styles/examples/.gitkeep +2 -0
- package/augment-extensions/writing-standards/screenplay/styles/examples/style-applications.md +1449 -0
- package/augment-extensions/writing-standards/screenplay/styles/module.json +64 -0
- package/augment-extensions/writing-standards/screenplay/styles/rules/.gitkeep +2 -0
- package/augment-extensions/writing-standards/screenplay/styles/rules/dialogue-centric.md +520 -0
- package/augment-extensions/writing-standards/screenplay/styles/rules/ensemble.md +499 -0
- package/augment-extensions/writing-standards/screenplay/styles/rules/epic.md +497 -0
- package/augment-extensions/writing-standards/screenplay/styles/rules/experimental.md +492 -0
- package/augment-extensions/writing-standards/screenplay/styles/rules/flashback.md +509 -0
- package/augment-extensions/writing-standards/screenplay/styles/rules/linear.md +490 -0
- package/augment-extensions/writing-standards/screenplay/styles/rules/minimalist.md +499 -0
- package/augment-extensions/writing-standards/screenplay/styles/rules/non-linear.md +501 -0
- package/augment-extensions/writing-standards/screenplay/styles/rules/poetic.md +499 -0
- package/augment-extensions/writing-standards/screenplay/styles/rules/realistic.md +498 -0
- package/augment-extensions/writing-standards/screenplay/styles/rules/satirical.md +499 -0
- package/augment-extensions/writing-standards/screenplay/styles/rules/surreal.md +508 -0
- package/augment-extensions/writing-standards/screenplay/styles/rules/voice-over.md +500 -0
- package/augment-extensions/writing-standards/screenplay/themes/README.md +158 -0
- package/augment-extensions/writing-standards/screenplay/themes/examples/.gitkeep +2 -0
- package/augment-extensions/writing-standards/screenplay/themes/examples/common-mistakes-and-fixes.md +643 -0
- package/augment-extensions/writing-standards/screenplay/themes/examples/complete-scene-example.md +311 -0
- package/augment-extensions/writing-standards/screenplay/themes/examples/individual-theme-examples.md +562 -0
- package/augment-extensions/writing-standards/screenplay/themes/examples/multi-theme-weaving.md +538 -0
- package/augment-extensions/writing-standards/screenplay/themes/examples/theme-application-guide.md +432 -0
- package/augment-extensions/writing-standards/screenplay/themes/examples/theme-integration-across-acts.md +637 -0
- package/augment-extensions/writing-standards/screenplay/themes/module.json +66 -0
- package/augment-extensions/writing-standards/screenplay/themes/rules/.gitkeep +2 -0
- package/augment-extensions/writing-standards/screenplay/themes/rules/ambition.md +458 -0
- package/augment-extensions/writing-standards/screenplay/themes/rules/betrayal.md +490 -0
- package/augment-extensions/writing-standards/screenplay/themes/rules/environment.md +458 -0
- package/augment-extensions/writing-standards/screenplay/themes/rules/fate.md +459 -0
- package/augment-extensions/writing-standards/screenplay/themes/rules/friendship.md +491 -0
- package/augment-extensions/writing-standards/screenplay/themes/rules/growth.md +491 -0
- package/augment-extensions/writing-standards/screenplay/themes/rules/identity.md +490 -0
- package/augment-extensions/writing-standards/screenplay/themes/rules/isolation.md +464 -0
- package/augment-extensions/writing-standards/screenplay/themes/rules/justice.md +461 -0
- package/augment-extensions/writing-standards/screenplay/themes/rules/love.md +489 -0
- package/augment-extensions/writing-standards/screenplay/themes/rules/power.md +494 -0
- package/augment-extensions/writing-standards/screenplay/themes/rules/redemption.md +483 -0
- package/augment-extensions/writing-standards/screenplay/themes/rules/revenge.md +489 -0
- package/augment-extensions/writing-standards/screenplay/themes/rules/survival.md +496 -0
- package/augment-extensions/writing-standards/screenplay/themes/rules/technology.md +463 -0
- package/cli/dist/cli.js +30 -1
- package/cli/dist/cli.js.map +1 -1
- package/cli/dist/commands/show.d.ts +23 -0
- package/cli/dist/commands/show.d.ts.map +1 -1
- package/cli/dist/commands/show.js +928 -10
- package/cli/dist/commands/show.js.map +1 -1
- package/cli/dist/types/gui.d.ts +62 -0
- package/cli/dist/types/gui.d.ts.map +1 -0
- package/cli/dist/types/gui.js +30 -0
- package/cli/dist/types/gui.js.map +1 -0
- package/cli/dist/utils/config-system.d.ts +111 -0
- package/cli/dist/utils/config-system.d.ts.map +1 -0
- package/cli/dist/utils/config-system.js +239 -0
- package/cli/dist/utils/config-system.js.map +1 -0
- package/cli/dist/utils/gui-helpers.d.ts +23 -0
- package/cli/dist/utils/gui-helpers.d.ts.map +1 -0
- package/cli/dist/utils/gui-helpers.js +159 -0
- package/cli/dist/utils/gui-helpers.js.map +1 -0
- package/cli/dist/utils/hook-system.d.ts +84 -0
- package/cli/dist/utils/hook-system.d.ts.map +1 -0
- package/cli/dist/utils/hook-system.js +151 -0
- package/cli/dist/utils/hook-system.js.map +1 -0
- package/cli/dist/utils/inspection-cache.d.ts +56 -0
- package/cli/dist/utils/inspection-cache.d.ts.map +1 -0
- package/cli/dist/utils/inspection-cache.js +166 -0
- package/cli/dist/utils/inspection-cache.js.map +1 -0
- package/cli/dist/utils/inspection-handlers.d.ts +75 -0
- package/cli/dist/utils/inspection-handlers.d.ts.map +1 -0
- package/cli/dist/utils/inspection-handlers.js +171 -0
- package/cli/dist/utils/inspection-handlers.js.map +1 -0
- package/cli/dist/utils/module-system.d.ts +81 -1
- package/cli/dist/utils/module-system.d.ts.map +1 -1
- package/cli/dist/utils/module-system.js +393 -16
- package/cli/dist/utils/module-system.js.map +1 -1
- package/cli/dist/utils/plugin-system.d.ts +133 -0
- package/cli/dist/utils/plugin-system.d.ts.map +1 -0
- package/cli/dist/utils/plugin-system.js +210 -0
- package/cli/dist/utils/plugin-system.js.map +1 -0
- package/cli/dist/utils/progress.d.ts +67 -0
- package/cli/dist/utils/progress.d.ts.map +1 -0
- package/cli/dist/utils/progress.js +146 -0
- package/cli/dist/utils/progress.js.map +1 -0
- package/cli/dist/utils/stream-reader.d.ts +34 -0
- package/cli/dist/utils/stream-reader.d.ts.map +1 -0
- package/cli/dist/utils/stream-reader.js +147 -0
- package/cli/dist/utils/stream-reader.js.map +1 -0
- package/cli/dist/utils/vscode-editor.d.ts +45 -0
- package/cli/dist/utils/vscode-editor.d.ts.map +1 -0
- package/cli/dist/utils/vscode-editor.js +171 -0
- package/cli/dist/utils/vscode-editor.js.map +1 -0
- package/cli/dist/utils/vscode-links.d.ts +49 -0
- package/cli/dist/utils/vscode-links.d.ts.map +1 -0
- package/cli/dist/utils/vscode-links.js +167 -0
- package/cli/dist/utils/vscode-links.js.map +1 -0
- package/modules.md +44 -2
- package/package.json +6 -4
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* VS Code Editor Integration Utility
|
|
3
|
+
*
|
|
4
|
+
* Provides utilities for opening files in VS Code editor.
|
|
5
|
+
* Supports opening files with line numbers and preview mode.
|
|
6
|
+
*/
|
|
7
|
+
export interface EditorOptions {
|
|
8
|
+
line?: number;
|
|
9
|
+
column?: number;
|
|
10
|
+
preview?: boolean;
|
|
11
|
+
reuse?: boolean;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Check if VS Code CLI is available
|
|
15
|
+
*/
|
|
16
|
+
export declare function isVSCodeAvailable(): boolean;
|
|
17
|
+
/**
|
|
18
|
+
* Open a file in VS Code editor
|
|
19
|
+
*/
|
|
20
|
+
export declare function openInVSCode(filePath: string, options?: EditorOptions): Promise<boolean>;
|
|
21
|
+
/**
|
|
22
|
+
* Open a file in VS Code preview pane
|
|
23
|
+
*/
|
|
24
|
+
export declare function openInPreview(filePath: string, options?: Omit<EditorOptions, 'preview'>): Promise<boolean>;
|
|
25
|
+
/**
|
|
26
|
+
* Open a file in VS Code editor (full tab)
|
|
27
|
+
*/
|
|
28
|
+
export declare function openInEditor(filePath: string, options?: Omit<EditorOptions, 'preview'>): Promise<boolean>;
|
|
29
|
+
/**
|
|
30
|
+
* Focus VS Code window
|
|
31
|
+
*/
|
|
32
|
+
export declare function focusVSCode(): boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Get VS Code version
|
|
35
|
+
*/
|
|
36
|
+
export declare function getVSCodeVersion(): string | null;
|
|
37
|
+
/**
|
|
38
|
+
* Check if running inside VS Code integrated terminal
|
|
39
|
+
*/
|
|
40
|
+
export declare function isVSCodeTerminal(): boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Get current workspace folder from VS Code environment
|
|
43
|
+
*/
|
|
44
|
+
export declare function getVSCodeWorkspace(): string | undefined;
|
|
45
|
+
//# sourceMappingURL=vscode-editor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vscode-editor.d.ts","sourceRoot":"","sources":["../../src/utils/vscode-editor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAO3C;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,CAgDlG;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,IAAI,CAAC,aAAa,EAAE,SAAS,CAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAEpH;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,IAAI,CAAC,aAAa,EAAE,SAAS,CAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAEnH;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,OAAO,CAcrC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,GAAG,IAAI,CAehD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,SAAS,CAEvD"}
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* VS Code Editor Integration Utility
|
|
4
|
+
*
|
|
5
|
+
* Provides utilities for opening files in VS Code editor.
|
|
6
|
+
* Supports opening files with line numbers and preview mode.
|
|
7
|
+
*/
|
|
8
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
9
|
+
if (k2 === undefined) k2 = k;
|
|
10
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
11
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
12
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
13
|
+
}
|
|
14
|
+
Object.defineProperty(o, k2, desc);
|
|
15
|
+
}) : (function(o, m, k, k2) {
|
|
16
|
+
if (k2 === undefined) k2 = k;
|
|
17
|
+
o[k2] = m[k];
|
|
18
|
+
}));
|
|
19
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
20
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
21
|
+
}) : function(o, v) {
|
|
22
|
+
o["default"] = v;
|
|
23
|
+
});
|
|
24
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
25
|
+
var ownKeys = function(o) {
|
|
26
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
27
|
+
var ar = [];
|
|
28
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
29
|
+
return ar;
|
|
30
|
+
};
|
|
31
|
+
return ownKeys(o);
|
|
32
|
+
};
|
|
33
|
+
return function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
})();
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
exports.isVSCodeAvailable = isVSCodeAvailable;
|
|
43
|
+
exports.openInVSCode = openInVSCode;
|
|
44
|
+
exports.openInPreview = openInPreview;
|
|
45
|
+
exports.openInEditor = openInEditor;
|
|
46
|
+
exports.focusVSCode = focusVSCode;
|
|
47
|
+
exports.getVSCodeVersion = getVSCodeVersion;
|
|
48
|
+
exports.isVSCodeTerminal = isVSCodeTerminal;
|
|
49
|
+
exports.getVSCodeWorkspace = getVSCodeWorkspace;
|
|
50
|
+
const child_process = __importStar(require("child_process"));
|
|
51
|
+
const path = __importStar(require("path"));
|
|
52
|
+
const fs = __importStar(require("fs"));
|
|
53
|
+
/**
|
|
54
|
+
* Check if VS Code CLI is available
|
|
55
|
+
*/
|
|
56
|
+
function isVSCodeAvailable() {
|
|
57
|
+
try {
|
|
58
|
+
child_process.execSync('code --version', { stdio: 'ignore' });
|
|
59
|
+
return true;
|
|
60
|
+
}
|
|
61
|
+
catch (error) {
|
|
62
|
+
return false;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Open a file in VS Code editor
|
|
67
|
+
*/
|
|
68
|
+
async function openInVSCode(filePath, options = {}) {
|
|
69
|
+
const { line, column, preview = false, reuse = true } = options;
|
|
70
|
+
if (!isVSCodeAvailable()) {
|
|
71
|
+
throw new Error('VS Code CLI (code) is not available. Please install VS Code and ensure "code" is in your PATH.');
|
|
72
|
+
}
|
|
73
|
+
// Resolve to absolute path
|
|
74
|
+
const absPath = path.isAbsolute(filePath) ? filePath : path.resolve(filePath);
|
|
75
|
+
// Check if file exists
|
|
76
|
+
if (!fs.existsSync(absPath)) {
|
|
77
|
+
throw new Error(`File not found: ${absPath}`);
|
|
78
|
+
}
|
|
79
|
+
// Build command arguments
|
|
80
|
+
const args = [];
|
|
81
|
+
// Reuse window flag
|
|
82
|
+
if (reuse) {
|
|
83
|
+
args.push('-r');
|
|
84
|
+
}
|
|
85
|
+
// Add file path with line/column
|
|
86
|
+
let fileArg = absPath;
|
|
87
|
+
if (line !== undefined) {
|
|
88
|
+
fileArg += `:${line}`;
|
|
89
|
+
if (column !== undefined) {
|
|
90
|
+
fileArg += `:${column}`;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
args.push(fileArg);
|
|
94
|
+
// Preview mode (open in preview tab)
|
|
95
|
+
if (preview) {
|
|
96
|
+
args.push('--preview');
|
|
97
|
+
}
|
|
98
|
+
try {
|
|
99
|
+
// Execute VS Code command
|
|
100
|
+
child_process.execSync(`code ${args.join(' ')}`, {
|
|
101
|
+
stdio: 'ignore',
|
|
102
|
+
windowsHide: true
|
|
103
|
+
});
|
|
104
|
+
return true;
|
|
105
|
+
}
|
|
106
|
+
catch (error) {
|
|
107
|
+
throw new Error(`Failed to open file in VS Code: ${error instanceof Error ? error.message : String(error)}`);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Open a file in VS Code preview pane
|
|
112
|
+
*/
|
|
113
|
+
async function openInPreview(filePath, options = {}) {
|
|
114
|
+
return openInVSCode(filePath, { ...options, preview: true });
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Open a file in VS Code editor (full tab)
|
|
118
|
+
*/
|
|
119
|
+
async function openInEditor(filePath, options = {}) {
|
|
120
|
+
return openInVSCode(filePath, { ...options, preview: false });
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Focus VS Code window
|
|
124
|
+
*/
|
|
125
|
+
function focusVSCode() {
|
|
126
|
+
if (!isVSCodeAvailable()) {
|
|
127
|
+
return false;
|
|
128
|
+
}
|
|
129
|
+
try {
|
|
130
|
+
child_process.execSync('code -r', {
|
|
131
|
+
stdio: 'ignore',
|
|
132
|
+
windowsHide: true
|
|
133
|
+
});
|
|
134
|
+
return true;
|
|
135
|
+
}
|
|
136
|
+
catch (error) {
|
|
137
|
+
return false;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Get VS Code version
|
|
142
|
+
*/
|
|
143
|
+
function getVSCodeVersion() {
|
|
144
|
+
if (!isVSCodeAvailable()) {
|
|
145
|
+
return null;
|
|
146
|
+
}
|
|
147
|
+
try {
|
|
148
|
+
const output = child_process.execSync('code --version', {
|
|
149
|
+
encoding: 'utf-8',
|
|
150
|
+
windowsHide: true
|
|
151
|
+
});
|
|
152
|
+
const lines = output.trim().split('\n');
|
|
153
|
+
return lines[0] || null;
|
|
154
|
+
}
|
|
155
|
+
catch (error) {
|
|
156
|
+
return null;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Check if running inside VS Code integrated terminal
|
|
161
|
+
*/
|
|
162
|
+
function isVSCodeTerminal() {
|
|
163
|
+
return process.env.TERM_PROGRAM === 'vscode' || process.env.VSCODE_PID !== undefined;
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Get current workspace folder from VS Code environment
|
|
167
|
+
*/
|
|
168
|
+
function getVSCodeWorkspace() {
|
|
169
|
+
return process.env.VSCODE_WORKSPACE_FOLDER;
|
|
170
|
+
}
|
|
171
|
+
//# sourceMappingURL=vscode-editor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vscode-editor.js","sourceRoot":"","sources":["../../src/utils/vscode-editor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* VS Code Terminal Links Utility
|
|
3
|
+
*
|
|
4
|
+
* Provides utilities for creating clickable file links in VS Code terminal.
|
|
5
|
+
* Supports file paths with line numbers and column numbers.
|
|
6
|
+
*/
|
|
7
|
+
export interface LinkOptions {
|
|
8
|
+
line?: number;
|
|
9
|
+
column?: number;
|
|
10
|
+
absolute?: boolean;
|
|
11
|
+
workspaceRoot?: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Format a file path as a clickable VS Code terminal link
|
|
15
|
+
*
|
|
16
|
+
* VS Code recognizes these formats:
|
|
17
|
+
* - file:///absolute/path/to/file.ts
|
|
18
|
+
* - file:///absolute/path/to/file.ts:10
|
|
19
|
+
* - file:///absolute/path/to/file.ts:10:5
|
|
20
|
+
* - ./relative/path/to/file.ts
|
|
21
|
+
* - ./relative/path/to/file.ts:10
|
|
22
|
+
* - ./relative/path/to/file.ts:10:5
|
|
23
|
+
*/
|
|
24
|
+
export declare function formatVSCodeLink(filePath: string, options?: LinkOptions): string;
|
|
25
|
+
/**
|
|
26
|
+
* Format a file path as a file:// URI for VS Code
|
|
27
|
+
*/
|
|
28
|
+
export declare function formatFileUri(filePath: string, options?: LinkOptions): string;
|
|
29
|
+
/**
|
|
30
|
+
* Create a clickable link with custom text
|
|
31
|
+
*/
|
|
32
|
+
export declare function createClickableLink(filePath: string, displayText?: string, options?: LinkOptions): string;
|
|
33
|
+
/**
|
|
34
|
+
* Format a file path with line number for display
|
|
35
|
+
*/
|
|
36
|
+
export declare function formatFilePathWithLine(filePath: string, line?: number, column?: number): string;
|
|
37
|
+
/**
|
|
38
|
+
* Check if running in VS Code terminal
|
|
39
|
+
*/
|
|
40
|
+
export declare function isVSCodeTerminal(): boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Get workspace root from environment
|
|
43
|
+
*/
|
|
44
|
+
export declare function getWorkspaceRoot(): string | undefined;
|
|
45
|
+
/**
|
|
46
|
+
* Format a file path as a clickable link (auto-detects VS Code)
|
|
47
|
+
*/
|
|
48
|
+
export declare function formatClickablePath(filePath: string, options?: LinkOptions): string;
|
|
49
|
+
//# sourceMappingURL=vscode-links.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vscode-links.d.ts","sourceRoot":"","sources":["../../src/utils/vscode-links.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,MAAM,CA8BpF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,MAAM,CAkBjF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,MAAM,CAQ7G;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAW/F;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAgBrD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,MAAM,CAMvF"}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* VS Code Terminal Links Utility
|
|
4
|
+
*
|
|
5
|
+
* Provides utilities for creating clickable file links in VS Code terminal.
|
|
6
|
+
* Supports file paths with line numbers and column numbers.
|
|
7
|
+
*/
|
|
8
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
9
|
+
if (k2 === undefined) k2 = k;
|
|
10
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
11
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
12
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
13
|
+
}
|
|
14
|
+
Object.defineProperty(o, k2, desc);
|
|
15
|
+
}) : (function(o, m, k, k2) {
|
|
16
|
+
if (k2 === undefined) k2 = k;
|
|
17
|
+
o[k2] = m[k];
|
|
18
|
+
}));
|
|
19
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
20
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
21
|
+
}) : function(o, v) {
|
|
22
|
+
o["default"] = v;
|
|
23
|
+
});
|
|
24
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
25
|
+
var ownKeys = function(o) {
|
|
26
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
27
|
+
var ar = [];
|
|
28
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
29
|
+
return ar;
|
|
30
|
+
};
|
|
31
|
+
return ownKeys(o);
|
|
32
|
+
};
|
|
33
|
+
return function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
})();
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
exports.formatVSCodeLink = formatVSCodeLink;
|
|
43
|
+
exports.formatFileUri = formatFileUri;
|
|
44
|
+
exports.createClickableLink = createClickableLink;
|
|
45
|
+
exports.formatFilePathWithLine = formatFilePathWithLine;
|
|
46
|
+
exports.isVSCodeTerminal = isVSCodeTerminal;
|
|
47
|
+
exports.getWorkspaceRoot = getWorkspaceRoot;
|
|
48
|
+
exports.formatClickablePath = formatClickablePath;
|
|
49
|
+
const path = __importStar(require("path"));
|
|
50
|
+
const fs = __importStar(require("fs"));
|
|
51
|
+
/**
|
|
52
|
+
* Format a file path as a clickable VS Code terminal link
|
|
53
|
+
*
|
|
54
|
+
* VS Code recognizes these formats:
|
|
55
|
+
* - file:///absolute/path/to/file.ts
|
|
56
|
+
* - file:///absolute/path/to/file.ts:10
|
|
57
|
+
* - file:///absolute/path/to/file.ts:10:5
|
|
58
|
+
* - ./relative/path/to/file.ts
|
|
59
|
+
* - ./relative/path/to/file.ts:10
|
|
60
|
+
* - ./relative/path/to/file.ts:10:5
|
|
61
|
+
*/
|
|
62
|
+
function formatVSCodeLink(filePath, options = {}) {
|
|
63
|
+
const { line, column, absolute = false, workspaceRoot } = options;
|
|
64
|
+
let formattedPath;
|
|
65
|
+
if (absolute || path.isAbsolute(filePath)) {
|
|
66
|
+
// Use absolute path
|
|
67
|
+
const absPath = path.isAbsolute(filePath) ? filePath : path.resolve(filePath);
|
|
68
|
+
formattedPath = absPath;
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
// Use relative path
|
|
72
|
+
if (workspaceRoot && path.isAbsolute(filePath)) {
|
|
73
|
+
formattedPath = path.relative(workspaceRoot, filePath);
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
formattedPath = filePath;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
// Normalize path separators for consistency
|
|
80
|
+
formattedPath = formattedPath.replace(/\\/g, '/');
|
|
81
|
+
// Add line and column numbers if provided
|
|
82
|
+
if (line !== undefined) {
|
|
83
|
+
formattedPath += `:${line}`;
|
|
84
|
+
if (column !== undefined) {
|
|
85
|
+
formattedPath += `:${column}`;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
return formattedPath;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Format a file path as a file:// URI for VS Code
|
|
92
|
+
*/
|
|
93
|
+
function formatFileUri(filePath, options = {}) {
|
|
94
|
+
const { line, column } = options;
|
|
95
|
+
// Convert to absolute path
|
|
96
|
+
const absPath = path.isAbsolute(filePath) ? filePath : path.resolve(filePath);
|
|
97
|
+
// Convert to file:// URI
|
|
98
|
+
let uri = `file:///${absPath.replace(/\\/g, '/')}`;
|
|
99
|
+
// Add line and column numbers if provided
|
|
100
|
+
if (line !== undefined) {
|
|
101
|
+
uri += `:${line}`;
|
|
102
|
+
if (column !== undefined) {
|
|
103
|
+
uri += `:${column}`;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
return uri;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Create a clickable link with custom text
|
|
110
|
+
*/
|
|
111
|
+
function createClickableLink(filePath, displayText, options = {}) {
|
|
112
|
+
const link = formatVSCodeLink(filePath, options);
|
|
113
|
+
const text = displayText || path.basename(filePath);
|
|
114
|
+
// VS Code terminal supports ANSI escape codes for links
|
|
115
|
+
// Format: \x1b]8;;{uri}\x1b\\{text}\x1b]8;;\x1b\\
|
|
116
|
+
const uri = formatFileUri(filePath, options);
|
|
117
|
+
return `\x1b]8;;${uri}\x1b\\${text}\x1b]8;;\x1b\\`;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Format a file path with line number for display
|
|
121
|
+
*/
|
|
122
|
+
function formatFilePathWithLine(filePath, line, column) {
|
|
123
|
+
let formatted = filePath;
|
|
124
|
+
if (line !== undefined) {
|
|
125
|
+
formatted += `:${line}`;
|
|
126
|
+
if (column !== undefined) {
|
|
127
|
+
formatted += `:${column}`;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
return formatted;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Check if running in VS Code terminal
|
|
134
|
+
*/
|
|
135
|
+
function isVSCodeTerminal() {
|
|
136
|
+
return process.env.TERM_PROGRAM === 'vscode' || process.env.VSCODE_PID !== undefined;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Get workspace root from environment
|
|
140
|
+
*/
|
|
141
|
+
function getWorkspaceRoot() {
|
|
142
|
+
// Try to get from environment variables
|
|
143
|
+
if (process.env.VSCODE_WORKSPACE_FOLDER) {
|
|
144
|
+
return process.env.VSCODE_WORKSPACE_FOLDER;
|
|
145
|
+
}
|
|
146
|
+
// Try to find .git directory
|
|
147
|
+
let currentDir = process.cwd();
|
|
148
|
+
while (currentDir !== path.dirname(currentDir)) {
|
|
149
|
+
if (fs.existsSync(path.join(currentDir, '.git'))) {
|
|
150
|
+
return currentDir;
|
|
151
|
+
}
|
|
152
|
+
currentDir = path.dirname(currentDir);
|
|
153
|
+
}
|
|
154
|
+
return undefined;
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Format a file path as a clickable link (auto-detects VS Code)
|
|
158
|
+
*/
|
|
159
|
+
function formatClickablePath(filePath, options = {}) {
|
|
160
|
+
if (isVSCodeTerminal()) {
|
|
161
|
+
return createClickableLink(filePath, undefined, options);
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
return formatVSCodeLink(filePath, options);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
//# sourceMappingURL=vscode-links.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vscode-links.js","sourceRoot":"","sources":["../../src/utils/vscode-links.ts"],"names":[],"mappings":"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"}
|
package/modules.md
CHANGED
|
@@ -202,6 +202,47 @@ augx link coding-standards/powershell
|
|
|
202
202
|
}
|
|
203
203
|
```
|
|
204
204
|
|
|
205
|
+
## Writing Standards
|
|
206
|
+
|
|
207
|
+
### Screenplay Writing Standards
|
|
208
|
+
- **Module**: `writing-standards/screenplay`
|
|
209
|
+
- **Version**: 1.0.0
|
|
210
|
+
- **Character Count**: ~163,500
|
|
211
|
+
- **Description**: Comprehensive screenplay writing and crafting standards for AI-driven content creation across AAA Hollywood films, independent films, TV series, web content, news broadcasts, commercials, streaming content, and live TV productions
|
|
212
|
+
- **Contents**:
|
|
213
|
+
- Universal formatting (AMPAS standards)
|
|
214
|
+
- Narrative structures (Field, Snyder, Campbell)
|
|
215
|
+
- Character development and arcs
|
|
216
|
+
- Dialogue writing and subtext
|
|
217
|
+
- Screen continuity (180-degree rule, match cuts)
|
|
218
|
+
- Pacing and timing
|
|
219
|
+
- Diversity and inclusion
|
|
220
|
+
- AAA Hollywood films
|
|
221
|
+
- Independent films
|
|
222
|
+
- TV series (episodic/serialized)
|
|
223
|
+
- Web content (YouTube, TikTok, social media)
|
|
224
|
+
- News broadcasts (SPJ Code of Ethics)
|
|
225
|
+
- Commercials (15/30/60 second formats)
|
|
226
|
+
- Streaming content (Netflix, Amazon, Disney+)
|
|
227
|
+
- Live TV productions
|
|
228
|
+
- Fountain format support
|
|
229
|
+
- Export to Final Draft, PDF, HTML
|
|
230
|
+
|
|
231
|
+
**Usage**:
|
|
232
|
+
```bash
|
|
233
|
+
augx link writing-standards/screenplay
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
**Configuration** (`.augment/screenplay-config.json`):
|
|
237
|
+
```json
|
|
238
|
+
{
|
|
239
|
+
"categories": ["aaa-hollywood-films", "tv-series"],
|
|
240
|
+
"universalRules": true,
|
|
241
|
+
"fountainFormat": true,
|
|
242
|
+
"exportFormats": ["fdx", "pdf"]
|
|
243
|
+
}
|
|
244
|
+
```
|
|
245
|
+
|
|
205
246
|
## Collections
|
|
206
247
|
|
|
207
248
|
Collections bundle multiple related modules together for easier installation.
|
|
@@ -579,10 +620,11 @@ augx mcp wrap github-mcp search-repos github-search --category retrieval
|
|
|
579
620
|
|
|
580
621
|
## Statistics
|
|
581
622
|
|
|
582
|
-
- **Total Modules**:
|
|
623
|
+
- **Total Modules**: 19
|
|
583
624
|
- **Coding Standards**: 5
|
|
625
|
+
- **Writing Standards**: 1
|
|
584
626
|
- **Domain Rules**: 5
|
|
585
627
|
- **Workflows**: 2
|
|
586
628
|
- **Examples**: 4
|
|
587
629
|
- **Total Skills**: 4
|
|
588
|
-
- **Total Character Count**: ~1,
|
|
630
|
+
- **Total Character Count**: ~1,938,192
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mytechtoday/augment-extensions",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "CLI tool for managing Augment Code AI extension modules",
|
|
5
5
|
"main": "cli/dist/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -46,12 +46,12 @@
|
|
|
46
46
|
"license": "MIT",
|
|
47
47
|
"repository": {
|
|
48
48
|
"type": "git",
|
|
49
|
-
"url": "git+https://github.com/mytech-today-now/augment.git"
|
|
49
|
+
"url": "git+https://github.com/mytech-today-now/augment-extensions.git"
|
|
50
50
|
},
|
|
51
51
|
"bugs": {
|
|
52
|
-
"url": "https://github.com/mytech-today-now/augment/issues"
|
|
52
|
+
"url": "https://github.com/mytech-today-now/augment-extensions/issues"
|
|
53
53
|
},
|
|
54
|
-
"homepage": "https://github.com/mytech-today-now/augment#readme",
|
|
54
|
+
"homepage": "https://github.com/mytech-today-now/augment-extensions#readme",
|
|
55
55
|
"engines": {
|
|
56
56
|
"node": ">=16.0.0"
|
|
57
57
|
},
|
|
@@ -59,9 +59,11 @@
|
|
|
59
59
|
"access": "public"
|
|
60
60
|
},
|
|
61
61
|
"dependencies": {
|
|
62
|
+
"@types/highlight.js": "^9.12.4",
|
|
62
63
|
"@types/js-yaml": "^4.0.9",
|
|
63
64
|
"chalk": "^5.3.0",
|
|
64
65
|
"commander": "^11.0.0",
|
|
66
|
+
"highlight.js": "^11.11.1",
|
|
65
67
|
"inquirer": "^9.2.0",
|
|
66
68
|
"js-yaml": "^4.1.1",
|
|
67
69
|
"minimatch": "^10.1.1",
|