@lousy-agents/cli 2.6.0 → 2.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -13,7 +13,7 @@
13
13
  "lousy-agents": {
14
14
  "type": "stdio",
15
15
  "command": "npx",
16
- "args": ["-y", "@lousy-agents/cli", "mcp"]
16
+ "args": ["-y", "-p", "@lousy-agents/cli", "lousy-agents-mcp"]
17
17
  }
18
18
  }
19
19
  }
@@ -13,7 +13,7 @@
13
13
  "lousy-agents": {
14
14
  "type": "stdio",
15
15
  "command": "npx",
16
- "args": ["-y", "@lousy-agents/cli", "mcp"]
16
+ "args": ["-y", "-p", "@lousy-agents/cli", "lousy-agents-mcp"]
17
17
  }
18
18
  }
19
19
  }
package/dist/index.js CHANGED
@@ -29802,6 +29802,137 @@ const CLI_TEMPLATE_DIR = (0,external_node_path_.join)(PROJECT_ROOT, "cli", "copi
29802
29802
  */ function readCliTemplateFile(relativePath) {
29803
29803
  return readTemplateFile(relativePath, CLI_TEMPLATE_DIR);
29804
29804
  }
29805
+ /**
29806
+ * Builds the common filesystem nodes shared across all project types.
29807
+ * Each template has its own versions of these files, but the structure is identical.
29808
+ */ function buildCommonNodes(reader) {
29809
+ return [
29810
+ {
29811
+ type: "file",
29812
+ path: "biome.json",
29813
+ content: reader("biome.template.json")
29814
+ },
29815
+ {
29816
+ type: "file",
29817
+ path: ".gitignore",
29818
+ content: reader("gitignore.template")
29819
+ },
29820
+ {
29821
+ type: "file",
29822
+ path: ".editorconfig",
29823
+ content: reader(".editorconfig")
29824
+ },
29825
+ {
29826
+ type: "file",
29827
+ path: ".nvmrc",
29828
+ content: reader(".nvmrc")
29829
+ },
29830
+ {
29831
+ type: "file",
29832
+ path: ".yamllint",
29833
+ content: reader(".yamllint")
29834
+ },
29835
+ // GitHub copilot instructions
29836
+ {
29837
+ type: "directory",
29838
+ path: ".github"
29839
+ },
29840
+ {
29841
+ type: "directory",
29842
+ path: ".github/instructions"
29843
+ },
29844
+ {
29845
+ type: "file",
29846
+ path: ".github/copilot-instructions.md",
29847
+ content: reader(".github/copilot-instructions.md")
29848
+ },
29849
+ {
29850
+ type: "file",
29851
+ path: ".github/instructions/test.instructions.md",
29852
+ content: reader(".github/instructions/test.instructions.md")
29853
+ },
29854
+ {
29855
+ type: "file",
29856
+ path: ".github/instructions/spec.instructions.md",
29857
+ content: reader(".github/instructions/spec.instructions.md")
29858
+ },
29859
+ {
29860
+ type: "file",
29861
+ path: ".github/instructions/pipeline.instructions.md",
29862
+ content: reader(".github/instructions/pipeline.instructions.md")
29863
+ },
29864
+ {
29865
+ type: "file",
29866
+ path: ".github/instructions/software-architecture.instructions.md",
29867
+ content: reader(".github/instructions/software-architecture.instructions.md")
29868
+ },
29869
+ // GitHub Issue Templates
29870
+ {
29871
+ type: "directory",
29872
+ path: ".github/ISSUE_TEMPLATE"
29873
+ },
29874
+ {
29875
+ type: "file",
29876
+ path: ".github/ISSUE_TEMPLATE/feature-to-spec.yml",
29877
+ content: reader(".github/ISSUE_TEMPLATE/feature-to-spec.yml")
29878
+ },
29879
+ // GitHub Workflows
29880
+ {
29881
+ type: "directory",
29882
+ path: ".github/workflows"
29883
+ },
29884
+ {
29885
+ type: "file",
29886
+ path: ".github/workflows/assign-copilot.yml",
29887
+ content: reader(".github/workflows/assign-copilot.yml")
29888
+ },
29889
+ {
29890
+ type: "file",
29891
+ path: ".github/workflows/ci.yml",
29892
+ content: reader(".github/workflows/ci.yml")
29893
+ },
29894
+ // Specs directory
29895
+ {
29896
+ type: "directory",
29897
+ path: ".github/specs"
29898
+ },
29899
+ {
29900
+ type: "file",
29901
+ path: ".github/specs/README.md",
29902
+ content: reader(".github/specs/README.md")
29903
+ },
29904
+ // VSCode configuration
29905
+ {
29906
+ type: "directory",
29907
+ path: ".vscode"
29908
+ },
29909
+ {
29910
+ type: "file",
29911
+ path: ".vscode/extensions.json",
29912
+ content: reader(".vscode/extensions.json")
29913
+ },
29914
+ {
29915
+ type: "file",
29916
+ path: ".vscode/launch.json",
29917
+ content: reader(".vscode/launch.json")
29918
+ },
29919
+ {
29920
+ type: "file",
29921
+ path: ".vscode/mcp.json",
29922
+ content: reader(".vscode/mcp.json")
29923
+ },
29924
+ // Devcontainer configuration
29925
+ {
29926
+ type: "directory",
29927
+ path: ".devcontainer"
29928
+ },
29929
+ {
29930
+ type: "file",
29931
+ path: ".devcontainer/devcontainer.json",
29932
+ content: reader(".devcontainer/devcontainer.json")
29933
+ }
29934
+ ];
29935
+ }
29805
29936
  /**
29806
29937
  * Cached CLI structure - lazy-loaded on first access
29807
29938
  */ let cachedCliStructure = null;
@@ -29835,120 +29966,7 @@ const CLI_TEMPLATE_DIR = (0,external_node_path_.join)(PROJECT_ROOT, "cli", "copi
29835
29966
  path: "vitest.setup.ts",
29836
29967
  content: readCliTemplateFile("vitest.setup.ts")
29837
29968
  },
29838
- {
29839
- type: "file",
29840
- path: "biome.json",
29841
- content: readCliTemplateFile("biome.template.json")
29842
- },
29843
- {
29844
- type: "file",
29845
- path: ".gitignore",
29846
- content: readCliTemplateFile("gitignore.template")
29847
- },
29848
- {
29849
- type: "file",
29850
- path: ".editorconfig",
29851
- content: readCliTemplateFile(".editorconfig")
29852
- },
29853
- {
29854
- type: "file",
29855
- path: ".nvmrc",
29856
- content: readCliTemplateFile(".nvmrc")
29857
- },
29858
- {
29859
- type: "file",
29860
- path: ".yamllint",
29861
- content: readCliTemplateFile(".yamllint")
29862
- },
29863
- // GitHub copilot instructions
29864
- {
29865
- type: "directory",
29866
- path: ".github"
29867
- },
29868
- {
29869
- type: "directory",
29870
- path: ".github/instructions"
29871
- },
29872
- {
29873
- type: "file",
29874
- path: ".github/copilot-instructions.md",
29875
- content: readCliTemplateFile(".github/copilot-instructions.md")
29876
- },
29877
- {
29878
- type: "file",
29879
- path: ".github/instructions/test.instructions.md",
29880
- content: readCliTemplateFile(".github/instructions/test.instructions.md")
29881
- },
29882
- {
29883
- type: "file",
29884
- path: ".github/instructions/spec.instructions.md",
29885
- content: readCliTemplateFile(".github/instructions/spec.instructions.md")
29886
- },
29887
- {
29888
- type: "file",
29889
- path: ".github/instructions/pipeline.instructions.md",
29890
- content: readCliTemplateFile(".github/instructions/pipeline.instructions.md")
29891
- },
29892
- {
29893
- type: "file",
29894
- path: ".github/instructions/software-architecture.instructions.md",
29895
- content: readCliTemplateFile(".github/instructions/software-architecture.instructions.md")
29896
- },
29897
- // GitHub Issue Templates
29898
- {
29899
- type: "directory",
29900
- path: ".github/ISSUE_TEMPLATE"
29901
- },
29902
- {
29903
- type: "file",
29904
- path: ".github/ISSUE_TEMPLATE/feature-to-spec.yml",
29905
- content: readCliTemplateFile(".github/ISSUE_TEMPLATE/feature-to-spec.yml")
29906
- },
29907
- // GitHub Workflows
29908
- {
29909
- type: "directory",
29910
- path: ".github/workflows"
29911
- },
29912
- {
29913
- type: "file",
29914
- path: ".github/workflows/assign-copilot.yml",
29915
- content: readCliTemplateFile(".github/workflows/assign-copilot.yml")
29916
- },
29917
- {
29918
- type: "file",
29919
- path: ".github/workflows/ci.yml",
29920
- content: readCliTemplateFile(".github/workflows/ci.yml")
29921
- },
29922
- // Specs directory
29923
- {
29924
- type: "directory",
29925
- path: ".github/specs"
29926
- },
29927
- {
29928
- type: "file",
29929
- path: ".github/specs/README.md",
29930
- content: readCliTemplateFile(".github/specs/README.md")
29931
- },
29932
- // VSCode configuration
29933
- {
29934
- type: "directory",
29935
- path: ".vscode"
29936
- },
29937
- {
29938
- type: "file",
29939
- path: ".vscode/extensions.json",
29940
- content: readCliTemplateFile(".vscode/extensions.json")
29941
- },
29942
- {
29943
- type: "file",
29944
- path: ".vscode/launch.json",
29945
- content: readCliTemplateFile(".vscode/launch.json")
29946
- },
29947
- {
29948
- type: "file",
29949
- path: ".vscode/mcp.json",
29950
- content: readCliTemplateFile(".vscode/mcp.json")
29951
- },
29969
+ ...buildCommonNodes(readCliTemplateFile),
29952
29970
  // Source code
29953
29971
  {
29954
29972
  type: "directory",
@@ -29963,16 +29981,6 @@ const CLI_TEMPLATE_DIR = (0,external_node_path_.join)(PROJECT_ROOT, "cli", "copi
29963
29981
  type: "file",
29964
29982
  path: "src/index.test.ts",
29965
29983
  content: readCliTemplateFile("src/index.test.ts")
29966
- },
29967
- // Devcontainer configuration
29968
- {
29969
- type: "directory",
29970
- path: ".devcontainer"
29971
- },
29972
- {
29973
- type: "file",
29974
- path: ".devcontainer/devcontainer.json",
29975
- content: readCliTemplateFile(".devcontainer/devcontainer.json")
29976
29984
  }
29977
29985
  ]
29978
29986
  };
@@ -29994,6 +30002,11 @@ const CLI_TEMPLATE_DIR = (0,external_node_path_.join)(PROJECT_ROOT, "cli", "copi
29994
30002
  /**
29995
30003
  * Cached webapp structure - lazy-loaded on first access
29996
30004
  */ let cachedWebappStructure = null;
30005
+ /**
30006
+ * Helper function to read webapp template files
30007
+ */ function readWebappTemplateFile(relativePath) {
30008
+ return readTemplateFile(relativePath, WEBAPP_TEMPLATE_DIR);
30009
+ }
29997
30010
  /**
29998
30011
  * Builds the webapp project filesystem structure by reading template files
29999
30012
  * This is called lazily only when webapp scaffolding is needed
@@ -30007,137 +30020,29 @@ const CLI_TEMPLATE_DIR = (0,external_node_path_.join)(PROJECT_ROOT, "cli", "copi
30007
30020
  {
30008
30021
  type: "file",
30009
30022
  path: "package.json",
30010
- content: readTemplateFile("package.json")
30023
+ content: readWebappTemplateFile("package.json")
30011
30024
  },
30012
30025
  {
30013
30026
  type: "file",
30014
30027
  path: "tsconfig.json",
30015
- content: readTemplateFile("tsconfig.json")
30028
+ content: readWebappTemplateFile("tsconfig.json")
30016
30029
  },
30017
30030
  {
30018
30031
  type: "file",
30019
30032
  path: "next.config.ts",
30020
- content: readTemplateFile("next.config.ts")
30033
+ content: readWebappTemplateFile("next.config.ts")
30021
30034
  },
30022
30035
  {
30023
30036
  type: "file",
30024
30037
  path: "vitest.config.ts",
30025
- content: readTemplateFile("vitest.config.ts")
30038
+ content: readWebappTemplateFile("vitest.config.ts")
30026
30039
  },
30027
30040
  {
30028
30041
  type: "file",
30029
30042
  path: "vitest.setup.ts",
30030
- content: readTemplateFile("vitest.setup.ts")
30031
- },
30032
- {
30033
- type: "file",
30034
- path: "biome.json",
30035
- content: readTemplateFile("biome.json")
30036
- },
30037
- {
30038
- type: "file",
30039
- path: ".editorconfig",
30040
- content: readTemplateFile(".editorconfig")
30043
+ content: readWebappTemplateFile("vitest.setup.ts")
30041
30044
  },
30042
- {
30043
- type: "file",
30044
- path: ".nvmrc",
30045
- content: readTemplateFile(".nvmrc")
30046
- },
30047
- {
30048
- type: "file",
30049
- path: ".yamllint",
30050
- content: readTemplateFile(".yamllint")
30051
- },
30052
- // GitHub copilot instructions
30053
- {
30054
- type: "directory",
30055
- path: ".github"
30056
- },
30057
- {
30058
- type: "directory",
30059
- path: ".github/instructions"
30060
- },
30061
- {
30062
- type: "file",
30063
- path: ".github/copilot-instructions.md",
30064
- content: readTemplateFile(".github/copilot-instructions.md")
30065
- },
30066
- {
30067
- type: "file",
30068
- path: ".github/instructions/test.instructions.md",
30069
- content: readTemplateFile(".github/instructions/test.instructions.md")
30070
- },
30071
- {
30072
- type: "file",
30073
- path: ".github/instructions/spec.instructions.md",
30074
- content: readTemplateFile(".github/instructions/spec.instructions.md")
30075
- },
30076
- {
30077
- type: "file",
30078
- path: ".github/instructions/pipeline.instructions.md",
30079
- content: readTemplateFile(".github/instructions/pipeline.instructions.md")
30080
- },
30081
- {
30082
- type: "file",
30083
- path: ".github/instructions/software-architecture.instructions.md",
30084
- content: readTemplateFile(".github/instructions/software-architecture.instructions.md")
30085
- },
30086
- // GitHub Issue Templates
30087
- {
30088
- type: "directory",
30089
- path: ".github/ISSUE_TEMPLATE"
30090
- },
30091
- {
30092
- type: "file",
30093
- path: ".github/ISSUE_TEMPLATE/feature-to-spec.yml",
30094
- content: readTemplateFile(".github/ISSUE_TEMPLATE/feature-to-spec.yml")
30095
- },
30096
- // GitHub Workflows
30097
- {
30098
- type: "directory",
30099
- path: ".github/workflows"
30100
- },
30101
- {
30102
- type: "file",
30103
- path: ".github/workflows/assign-copilot.yml",
30104
- content: readTemplateFile(".github/workflows/assign-copilot.yml")
30105
- },
30106
- // Specs directory
30107
- {
30108
- type: "directory",
30109
- path: ".github/specs"
30110
- },
30111
- {
30112
- type: "file",
30113
- path: ".github/specs/README.md",
30114
- content: readTemplateFile(".github/specs/README.md")
30115
- },
30116
- // VSCode configuration
30117
- {
30118
- type: "directory",
30119
- path: ".vscode"
30120
- },
30121
- {
30122
- type: "file",
30123
- path: ".vscode/extensions.json",
30124
- content: readTemplateFile(".vscode/extensions.json")
30125
- },
30126
- {
30127
- type: "file",
30128
- path: ".vscode/launch.json",
30129
- content: readTemplateFile(".vscode/launch.json")
30130
- },
30131
- // Devcontainer configuration
30132
- {
30133
- type: "directory",
30134
- path: ".devcontainer"
30135
- },
30136
- {
30137
- type: "file",
30138
- path: ".devcontainer/devcontainer.json",
30139
- content: readTemplateFile(".devcontainer/devcontainer.json")
30140
- }
30045
+ ...buildCommonNodes(readWebappTemplateFile)
30141
30046
  ]
30142
30047
  };
30143
30048
  return cachedWebappStructure;
@@ -30185,130 +30090,7 @@ const CLI_TEMPLATE_DIR = (0,external_node_path_.join)(PROJECT_ROOT, "cli", "copi
30185
30090
  path: "vitest.setup.ts",
30186
30091
  content: readRestApiTemplateFile("vitest.setup.ts")
30187
30092
  },
30188
- {
30189
- type: "file",
30190
- path: "biome.json",
30191
- content: readRestApiTemplateFile("biome.template.json")
30192
- },
30193
- {
30194
- type: "file",
30195
- path: ".editorconfig",
30196
- content: readRestApiTemplateFile(".editorconfig")
30197
- },
30198
- {
30199
- type: "file",
30200
- path: ".nvmrc",
30201
- content: readRestApiTemplateFile(".nvmrc")
30202
- },
30203
- {
30204
- type: "file",
30205
- path: ".yamllint",
30206
- content: readRestApiTemplateFile(".yamllint")
30207
- },
30208
- {
30209
- type: "file",
30210
- path: ".gitignore",
30211
- content: readRestApiTemplateFile("gitignore.template")
30212
- },
30213
- // GitHub copilot instructions
30214
- {
30215
- type: "directory",
30216
- path: ".github"
30217
- },
30218
- {
30219
- type: "directory",
30220
- path: ".github/instructions"
30221
- },
30222
- {
30223
- type: "file",
30224
- path: ".github/copilot-instructions.md",
30225
- content: readRestApiTemplateFile(".github/copilot-instructions.md")
30226
- },
30227
- {
30228
- type: "file",
30229
- path: ".github/instructions/test.instructions.md",
30230
- content: readRestApiTemplateFile(".github/instructions/test.instructions.md")
30231
- },
30232
- {
30233
- type: "file",
30234
- path: ".github/instructions/spec.instructions.md",
30235
- content: readRestApiTemplateFile(".github/instructions/spec.instructions.md")
30236
- },
30237
- {
30238
- type: "file",
30239
- path: ".github/instructions/pipeline.instructions.md",
30240
- content: readRestApiTemplateFile(".github/instructions/pipeline.instructions.md")
30241
- },
30242
- {
30243
- type: "file",
30244
- path: ".github/instructions/software-architecture.instructions.md",
30245
- content: readRestApiTemplateFile(".github/instructions/software-architecture.instructions.md")
30246
- },
30247
- // GitHub Issue Templates
30248
- {
30249
- type: "directory",
30250
- path: ".github/ISSUE_TEMPLATE"
30251
- },
30252
- {
30253
- type: "file",
30254
- path: ".github/ISSUE_TEMPLATE/feature-to-spec.yml",
30255
- content: readRestApiTemplateFile(".github/ISSUE_TEMPLATE/feature-to-spec.yml")
30256
- },
30257
- // GitHub Workflows
30258
- {
30259
- type: "directory",
30260
- path: ".github/workflows"
30261
- },
30262
- {
30263
- type: "file",
30264
- path: ".github/workflows/assign-copilot.yml",
30265
- content: readRestApiTemplateFile(".github/workflows/assign-copilot.yml")
30266
- },
30267
- {
30268
- type: "file",
30269
- path: ".github/workflows/ci.yml",
30270
- content: readRestApiTemplateFile(".github/workflows/ci.yml")
30271
- },
30272
- // Specs directory
30273
- {
30274
- type: "directory",
30275
- path: ".github/specs"
30276
- },
30277
- {
30278
- type: "file",
30279
- path: ".github/specs/README.md",
30280
- content: readRestApiTemplateFile(".github/specs/README.md")
30281
- },
30282
- // VSCode configuration
30283
- {
30284
- type: "directory",
30285
- path: ".vscode"
30286
- },
30287
- {
30288
- type: "file",
30289
- path: ".vscode/extensions.json",
30290
- content: readRestApiTemplateFile(".vscode/extensions.json")
30291
- },
30292
- {
30293
- type: "file",
30294
- path: ".vscode/launch.json",
30295
- content: readRestApiTemplateFile(".vscode/launch.json")
30296
- },
30297
- {
30298
- type: "file",
30299
- path: ".vscode/mcp.json",
30300
- content: readRestApiTemplateFile(".vscode/mcp.json")
30301
- },
30302
- // Devcontainer configuration
30303
- {
30304
- type: "directory",
30305
- path: ".devcontainer"
30306
- },
30307
- {
30308
- type: "file",
30309
- path: ".devcontainer/devcontainer.json",
30310
- content: readRestApiTemplateFile(".devcontainer/devcontainer.json")
30311
- }
30093
+ ...buildCommonNodes(readRestApiTemplateFile)
30312
30094
  ]
30313
30095
  };
30314
30096
  return cachedRestApiStructure;