@soederpop/luca 0.0.22 → 0.0.23
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.
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
---
|
|
2
|
+
agentOptions:
|
|
3
|
+
permissionMode: bypassPermissions
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Check for undocumented features
|
|
7
|
+
|
|
8
|
+
The luca introspection and luca cli's describe command is powered by the JSDoc comments in the code base, and the values passed to the describe methods in the zod schema. This documentation is what is fed to AI Coding assistants to be able to understand how to use the individual features
|
|
9
|
+
|
|
10
|
+
Please scan the following paths:
|
|
11
|
+
|
|
12
|
+
```ts
|
|
13
|
+
const fm = await container.feature('fileManager').start()
|
|
14
|
+
const results = fm.match(['src/node/features/*.ts', 'src/agi/features/*.ts', 'src/web/features/*.ts'])
|
|
15
|
+
console.log(results.join("\n"))
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Please ensure every feature has accurate and valid JSDoc documentation for the class definitions, methods, and getters.
|
|
19
|
+
|
|
20
|
+
Validate the output of `bun run src/cli/cli.ts describe whatever` for each item you're working on, that it displays properly, is easy to understand, accurate, in terms of how your comments display there. You may need to run `bun run src/cli/cli.ts introspect` to generate the build time data.
|
|
21
|
+
|
|
22
|
+
You can pass `--platform=web` to see web specific output.
|
|
23
|
+
|
|
24
|
+
## Quality not just Quantity
|
|
25
|
+
|
|
26
|
+
- The presence of documentation isn't sufficient. Is it good documentation? Is it not overly verbose? Does it not explain stuff that doesn't matter? Is it accurate? If there are examples, do they work?
|
|
27
|
+
- The main consumer of `luca describe` will be an LLM so token budget matters. Every word has to be doing work. It should still be nice to look at for human coders too.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@soederpop/luca",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.23",
|
|
4
4
|
"website": "https://luca.soederpop.com",
|
|
5
5
|
"description": "lightweight universal conversational architecture AKA Le Ultimate Component Architecture AKA Last Universal Common Ancestor, part AI part Human",
|
|
6
6
|
"author": "jon soeder aka the people's champ <jon@soederpop.com>",
|
package/src/commands/prompt.ts
CHANGED
|
@@ -837,7 +837,10 @@ export default async function prompt(options: z.infer<typeof argsSchema>, contex
|
|
|
837
837
|
const candidate = paths.resolve(target)
|
|
838
838
|
if (fs.exists(candidate)) {
|
|
839
839
|
allPaths.push(target)
|
|
840
|
-
|
|
840
|
+
// this gives a way for you to say on a per project basis what you want the default coding assistant to be for the prompt command
|
|
841
|
+
// TODO need to document this somewhere
|
|
842
|
+
const { codingAssistant } = (container.manifest.luca || {})
|
|
843
|
+
target = codingAssistant || 'claude'
|
|
841
844
|
}
|
|
842
845
|
}
|
|
843
846
|
|