Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -45,4 +45,4 @@ lerna-debug.log*
*.test.ts.snap
/working/
/secrets.json
/reference/
reference/
293 changes: 275 additions & 18 deletions dist/bundle/index.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/bundle/package.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"name":"brass-monkey","version":"1.5.1","type":"module","main":"dist/index.js","scripts":{"build":"tsc && npm run bundle","bundle":"ncc build src/mcp-server.ts -o dist/bundle","test":"vitest run","test:watch":"vitest","lint":"eslint src/**/*.ts"},"keywords":["odoo","gemini","gemini-cli","cli","extension","mcp","ai-agent","xml-rpc","erp","crm"],"author":"Actinon","license":"MIT","description":"A high-fidelity Gemini CLI extension and MCP bridge for Odoo ERP/CRM.","dependencies":{"@modelcontextprotocol/sdk":"^1.29.0","keytar":"^7.9.0","xmlrpc":"^1.3.2","zod":"^4.3.6","zod-to-json-schema":"^3.25.2"},"devDependencies":{"@types/keytar":"^4.4.0","@types/node":"^25.6.0","@types/xmlrpc":"^1.3.10","@vercel/ncc":"^0.38.4","esbuild":"^0.28.0","typescript":"^6.0.3","vitest":"^4.1.4"}}
{"name":"brass-monkey","version":"1.6.0","type":"module","main":"dist/index.js","scripts":{"build":"tsc && npm run bundle","bundle":"ncc build src/mcp-server.ts -o dist/bundle","test":"vitest run","test:watch":"vitest","lint":"eslint src/**/*.ts"},"keywords":["odoo","gemini","gemini-cli","cli","extension","mcp","ai-agent","xml-rpc","erp","crm"],"author":"Actinon","license":"MIT","description":"A high-fidelity Gemini CLI extension and MCP bridge for Odoo ERP/CRM.","dependencies":{"@modelcontextprotocol/sdk":"^1.29.0","keytar":"^7.9.0","xmlrpc":"^1.3.2","zod":"^4.3.6","zod-to-json-schema":"^3.25.2"},"devDependencies":{"@types/keytar":"^4.4.0","@types/node":"^25.6.0","@types/xmlrpc":"^1.3.10","@vercel/ncc":"^0.38.4","esbuild":"^0.28.0","typescript":"^6.0.3","vitest":"^4.1.4"}}
26 changes: 26 additions & 0 deletions dist/bundle/services/domain-validator.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
export interface ValidationResult {
success: boolean;
healedDomain?: any[];
errorPayload?: {
isError: boolean;
message: string;
diagnostic_hints: {
invalid_field?: string;
invalid_operator?: string;
target_model: string;
did_you_mean_substrings?: string[];
action_directives: string[];
explanation?: string;
};
};
}
export declare class DomainValidationService {
/**
* Main entry point to validate and potentially heal an Odoo domain array.
*/
static validateAndHeal(client: any, model: string, domain: any[], instanceAlias?: string): Promise<ValidationResult>;
/**
* Helper to perform arity/grammar checks on prefix domains.
*/
private static checkPrefixGrammar;
}
5 changes: 5 additions & 0 deletions dist/bundle/tools/get_environment.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,9 @@ export type GetEnvironmentInput = z.infer<typeof GetEnvironmentSchema>;
export declare function getEnvironment(manager: InstanceManager, input: GetEnvironmentInput): Promise<{
summary: string;
environment: any;
active_context: {
implicit_allowed_company_ids: any;
visibility_scope: string;
tip: string;
};
}>;
3 changes: 3 additions & 0 deletions dist/bundle/tools/schemas.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -243,6 +243,7 @@ export declare const SEARCH_RECORDS_SCHEMA: {
};
};
required: string[];
description: string;
};
export declare const GET_RECORD_SCHEMA: {
type: string;
Expand Down Expand Up @@ -316,6 +317,7 @@ export declare const GET_RECORD_SCHEMA: {
description: string;
};
};
description: string;
};
export declare const GET_RECORDS_SCHEMA: {
type: string;
Expand Down Expand Up @@ -437,6 +439,7 @@ export declare const AGGREGATE_RECORDS_SCHEMA: {
};
};
required: string[];
description: string;
};
export declare const GET_AUDIT_LOG_SCHEMA: {
type: string;
Expand Down
16 changes: 14 additions & 2 deletions dist/bundle/tools/search_records.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,23 @@ export type SearchRecordsInput = z.infer<typeof SearchRecordsSchema>;
* Returns a pagination envelope containing total matching count and display display-name mapping.
*/
export declare function searchRecords(manager: InstanceManager, input: SearchRecordsInput): Promise<{
isError: boolean;
message: string;
diagnostic_hints: {
invalid_field?: string;
invalid_operator?: string;
target_model: string;
did_you_mean_substrings?: string[];
action_directives: string[];
explanation?: string;
};
} | {
leads: any;
results: any;
optimization_advice?: string[] | undefined;
model: string;
count: any;
total_count: any;
offset: number;
limit: number;
leads: any;
results: any;
}>;
2 changes: 1 addition & 1 deletion dist/mcp-server.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

26 changes: 26 additions & 0 deletions dist/services/domain-validator.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
export interface ValidationResult {
success: boolean;
healedDomain?: any[];
errorPayload?: {
isError: boolean;
message: string;
diagnostic_hints: {
invalid_field?: string;
invalid_operator?: string;
target_model: string;
did_you_mean_substrings?: string[];
action_directives: string[];
explanation?: string;
};
};
}
export declare class DomainValidationService {
/**
* Main entry point to validate and potentially heal an Odoo domain array.
*/
static validateAndHeal(client: any, model: string, domain: any[], instanceAlias?: string): Promise<ValidationResult>;
/**
* Helper to perform arity/grammar checks on prefix domains.
*/
private static checkPrefixGrammar;
}
233 changes: 233 additions & 0 deletions dist/services/domain-validator.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading