fullerdev 0.1.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/LICENSE +21 -0
- package/README.md +276 -0
- package/bin/setup.js +119 -0
- package/dist/agents/designer.d.ts +6 -0
- package/dist/agents/designer.d.ts.map +1 -0
- package/dist/agents/devops.d.ts +7 -0
- package/dist/agents/devops.d.ts.map +1 -0
- package/dist/agents/explorer.d.ts +7 -0
- package/dist/agents/explorer.d.ts.map +1 -0
- package/dist/agents/fixer.d.ts +6 -0
- package/dist/agents/fixer.d.ts.map +1 -0
- package/dist/agents/librarian.d.ts +6 -0
- package/dist/agents/librarian.d.ts.map +1 -0
- package/dist/agents/oracle.d.ts +6 -0
- package/dist/agents/oracle.d.ts.map +1 -0
- package/dist/agents/orchestrator.d.ts +13 -0
- package/dist/agents/orchestrator.d.ts.map +1 -0
- package/dist/config/defaults.d.ts +14 -0
- package/dist/config/defaults.d.ts.map +1 -0
- package/dist/config/loader.d.ts +54 -0
- package/dist/config/loader.d.ts.map +1 -0
- package/dist/config/schema.d.ts +603 -0
- package/dist/config/schema.d.ts.map +1 -0
- package/dist/hooks/context-injection.d.ts +25 -0
- package/dist/hooks/context-injection.d.ts.map +1 -0
- package/dist/hooks/devops-integration.d.ts +31 -0
- package/dist/hooks/devops-integration.d.ts.map +1 -0
- package/dist/hooks/index.d.ts +46 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/session-lifecycle.d.ts +15 -0
- package/dist/hooks/session-lifecycle.d.ts.map +1 -0
- package/dist/hooks/todo-continuation.d.ts +17 -0
- package/dist/hooks/todo-continuation.d.ts.map +1 -0
- package/dist/index.d.ts +31 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1261 -0
- package/dist/mcp/index.d.ts +31 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/tools/azure/git.d.ts +26 -0
- package/dist/tools/azure/git.d.ts.map +1 -0
- package/dist/tools/azure/index.d.ts +6 -0
- package/dist/tools/azure/index.d.ts.map +1 -0
- package/dist/tools/azure/pipelines.d.ts +18 -0
- package/dist/tools/azure/pipelines.d.ts.map +1 -0
- package/dist/tools/azure/wiki.d.ts +18 -0
- package/dist/tools/azure/wiki.d.ts.map +1 -0
- package/dist/tools/azure/work-items.d.ts +26 -0
- package/dist/tools/azure/work-items.d.ts.map +1 -0
- package/dist/tools/core/index.d.ts +17 -0
- package/dist/tools/core/index.d.ts.map +1 -0
- package/dist/tools/index.d.ts +7 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/fullerdev.schema.json +117 -0
- package/package.json +65 -0
- package/src/skills/agent-browser/SKILL.md +31 -0
- package/src/skills/azure-devops/SKILL.md +99 -0
- package/src/skills/frontend-ui-ux/SKILL.md +62 -0
- package/src/skills/gitmaster/SKILL.md +52 -0
- package/src/skills/simplify/SKILL.md +50 -0
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { PluginConfig } from "../config/schema";
|
|
2
|
+
/**
|
|
3
|
+
* Compose all hooks into a single interface compatible with OpenCode's Plugin Hooks.
|
|
4
|
+
*/
|
|
5
|
+
export declare function createAllHooks(config: PluginConfig): {
|
|
6
|
+
/**
|
|
7
|
+
* Event hook — merged from multiple hook sources.
|
|
8
|
+
* All event handlers run in sequence for each event.
|
|
9
|
+
*/
|
|
10
|
+
event: (input: {
|
|
11
|
+
event: {
|
|
12
|
+
type: string;
|
|
13
|
+
properties?: Record<string, unknown>;
|
|
14
|
+
};
|
|
15
|
+
}) => Promise<void>;
|
|
16
|
+
/**
|
|
17
|
+
* Chat params hook — merged: devops integration + agent model routing.
|
|
18
|
+
*/
|
|
19
|
+
"chat.params": (input: {
|
|
20
|
+
sessionID: string;
|
|
21
|
+
agent: string;
|
|
22
|
+
message: Record<string, unknown>;
|
|
23
|
+
}, output: {
|
|
24
|
+
options: Record<string, unknown>;
|
|
25
|
+
}) => Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
* Tool execute before hook.
|
|
28
|
+
*/
|
|
29
|
+
"tool.execute.before": (input: {
|
|
30
|
+
tool: string;
|
|
31
|
+
args: Record<string, unknown>;
|
|
32
|
+
}, output: {
|
|
33
|
+
context?: string[];
|
|
34
|
+
}) => Promise<void>;
|
|
35
|
+
/**
|
|
36
|
+
* Tool execute after hook — merged from multiple sources.
|
|
37
|
+
*/
|
|
38
|
+
"tool.execute.after": (input: {
|
|
39
|
+
tool: string;
|
|
40
|
+
args: Record<string, unknown>;
|
|
41
|
+
result: unknown;
|
|
42
|
+
}, output: {
|
|
43
|
+
context?: string[];
|
|
44
|
+
}) => Promise<void>;
|
|
45
|
+
};
|
|
46
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAMrD;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY;IAO/C;;;OAGG;mBACkB;QAAE,KAAK,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAA;KAAE;IAMtF;;OAEG;2BAEM;QACL,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAClC,UACO;QAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE;IAK9C;;OAEG;mCAEM;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,UAC9C;QAAE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE;IAKhC;;OAEG;kCAEM;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,UAC/D;QAAE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE;EAMnC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { PluginConfig } from "../config/schema";
|
|
2
|
+
/**
|
|
3
|
+
* Session lifecycle hooks — handle session creation, idle events, and error recovery.
|
|
4
|
+
* These hook into OpenCode's `event` hook to monitor session state.
|
|
5
|
+
*/
|
|
6
|
+
export interface SessionLifecycleHooks {
|
|
7
|
+
event: (input: {
|
|
8
|
+
event: {
|
|
9
|
+
type: string;
|
|
10
|
+
properties?: Record<string, unknown>;
|
|
11
|
+
};
|
|
12
|
+
}) => Promise<void>;
|
|
13
|
+
}
|
|
14
|
+
export declare function createSessionLifecycleHooks(_config: PluginConfig): SessionLifecycleHooks;
|
|
15
|
+
//# sourceMappingURL=session-lifecycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-lifecycle.d.ts","sourceRoot":"","sources":["../../src/hooks/session-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD;;;GAGG;AAEH,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACpG;AAED,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,YAAY,GACpB,qBAAqB,CA4BvB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { PluginConfig } from "../config/schema";
|
|
2
|
+
/**
|
|
3
|
+
* Todo continuation hook — auto-continues orchestrator sessions when todos remain.
|
|
4
|
+
* This prevents sessions from idling when there's still work to do.
|
|
5
|
+
*
|
|
6
|
+
* Copied and adapted from oh-my-opencode-slim's todo-continuation pattern.
|
|
7
|
+
*/
|
|
8
|
+
export interface TodoContinuationHooks {
|
|
9
|
+
event: (input: {
|
|
10
|
+
event: {
|
|
11
|
+
type: string;
|
|
12
|
+
properties?: Record<string, unknown>;
|
|
13
|
+
};
|
|
14
|
+
}) => Promise<void>;
|
|
15
|
+
}
|
|
16
|
+
export declare function createTodoContinuationHooks(config: PluginConfig): TodoContinuationHooks;
|
|
17
|
+
//# sourceMappingURL=todo-continuation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"todo-continuation.d.ts","sourceRoot":"","sources":["../../src/hooks/todo-continuation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD;;;;;GAKG;AAEH,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACpG;AAED,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,YAAY,GACnB,qBAAqB,CA0BvB"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { Plugin, PluginModule } from "@opencode-ai/plugin";
|
|
2
|
+
export { ORCHESTRATOR_PROMPT } from "./agents/orchestrator";
|
|
3
|
+
export { EXPLORER_PROMPT } from "./agents/explorer";
|
|
4
|
+
export { ORACLE_PROMPT } from "./agents/oracle";
|
|
5
|
+
export { LIBRARIAN_PROMPT } from "./agents/librarian";
|
|
6
|
+
export { DESIGNER_PROMPT } from "./agents/designer";
|
|
7
|
+
export { FIXER_PROMPT } from "./agents/fixer";
|
|
8
|
+
export { DEVOPS_PROMPT } from "./agents/devops";
|
|
9
|
+
export type { PluginConfig, Preset, AgentConfig, AzureDevOpsConfig } from "./config/schema";
|
|
10
|
+
export { PluginConfigSchema } from "./config/schema";
|
|
11
|
+
/**
|
|
12
|
+
* FullerDev Plugin
|
|
13
|
+
*
|
|
14
|
+
* An opinionated multi-agent orchestration plugin for OpenCode,
|
|
15
|
+
* tuned for Azure DevOps-native workflows.
|
|
16
|
+
*
|
|
17
|
+
* Features:
|
|
18
|
+
* - 7 specialized subagents (orchestrator, explorer, oracle, librarian, designer, fixer, devops)
|
|
19
|
+
* - Per-agent model and variant configuration via presets
|
|
20
|
+
* - Built-in MCPs: DeepWiki, grep.app, Context7, WebSearch
|
|
21
|
+
* - Built-in tools: Azure DevOps (Work Items, Git, Wiki, Pipelines) + core utilities
|
|
22
|
+
* - Built-in skills: gitmaster, frontend-ui-ux, agent-browser, azure-devops, simplify
|
|
23
|
+
* - Lifecycle hooks: session management, todo continuation, context injection, devops integration
|
|
24
|
+
* - JSONC config with env var substitution (${AZURE_DEVOPS_EXT_PAT} etc.)
|
|
25
|
+
*
|
|
26
|
+
* @see https://github.com/ao-barbosa/fullerdev
|
|
27
|
+
*/
|
|
28
|
+
export declare const FullerDevPlugin: Plugin;
|
|
29
|
+
declare const fullerdevPluginModule: PluginModule;
|
|
30
|
+
export default fullerdevPluginModule;
|
|
31
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAS,MAAM,qBAAqB,CAAC;AAoBvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC5F,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,eAAe,EAAE,MAsJ7B,CAAC;AAIF,QAAA,MAAM,qBAAqB,EAAE,YAG5B,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
|