Skip to content

Commit 726217b

Browse files
committed
docs
1 parent fe5dc26 commit 726217b

File tree

1 file changed

+142
-142
lines changed

1 file changed

+142
-142
lines changed

docs/configuration.md

Lines changed: 142 additions & 142 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Configuration
22

3-
Check all available configs [here](#all-configs) and its default values [here](#default-values).
3+
Check all available configs and its default values [here](#all-configs).
44

55
## Ways to configure
66

@@ -62,41 +62,41 @@ Rules are Multi-Document context files (`.mdc`) and the following metadata is su
6262

6363
There are 3 possible ways to configure rules following this order of priority:
6464

65-
### Project file
65+
=== "Project file"
6666

67-
A `.eca/rules` folder from the workspace root containing `.mdc` files with the rules.
67+
A `.eca/rules` folder from the workspace root containing `.mdc` files with the rules.
6868

69-
`.eca/rules/talk_funny.mdc`
70-
```markdown
71-
---
72-
description: Use when responding anything
73-
---
69+
`.eca/rules/talk_funny.mdc`
70+
```markdown
71+
---
72+
description: Use when responding anything
73+
---
7474

75-
- Talk funny like Mickey!
76-
```
75+
- Talk funny like Mickey!
76+
```
7777

78-
### Global file
78+
=== "Global file"
7979

80-
A `$XDG_CONFIG_HOME/eca/rules` or `~/.config/eca/rules` folder containing `.mdc` files with the rules.
80+
A `$XDG_CONFIG_HOME/eca/rules` or `~/.config/eca/rules` folder containing `.mdc` files with the rules.
8181

82-
`~/.config/eca/rules/talk_funny.mdc`
83-
```markdown
84-
---
85-
description: Use when responding anything
86-
---
82+
`~/.config/eca/rules/talk_funny.mdc`
83+
```markdown
84+
---
85+
description: Use when responding anything
86+
---
8787

88-
- Talk funny like Mickey!
89-
```
88+
- Talk funny like Mickey!
89+
```
9090

91-
### Config
91+
=== "Config"
9292

93-
Just add to your config the `:rules` pointing to `.mdc` files that will be searched from the workspace root if not an absolute path:
93+
Just add toyour config the `:rules` pointing to `.mdc` files that will be searched from the workspace root if not an absolute path:
9494

95-
```javascript
96-
{
97-
"rules": [{"path": "my-rule.mdc"}]
98-
}
99-
```
95+
```javascript
96+
{
97+
"rules": [{"path": "my-rule.mdc"}]
98+
}
99+
```
100100

101101
## MCP
102102

@@ -119,134 +119,134 @@ For MCP servers configuration, use the `mcpServers` config, example:
119119
You can configure custom command prompts for project, global or via `commands` config pointing to the path of the commands.
120120
Prompts can use variables like `$ARGS`, `$ARG1`, `ARG2`, to replace in the prompt during command call.
121121

122-
### Local custom commands
122+
=== "Local custom commands"
123123

124-
A `.eca/commands` folder from the workspace root containing `.md` files with the custom prompt.
124+
A `.eca/commands` folder from the workspace root containing `.md` files with the custom prompt.
125125

126-
`.eca/commands/check-performance.md`
127-
```markdown
128-
Check for performance issues in $ARG1 and optimize if needed.
129-
```
126+
`.eca/commands/check-performance.md`
127+
```markdown
128+
Check for performance issues in $ARG1 and optimize if needed.
129+
```
130130

131-
### Global custom commands
131+
=== "Global custom commands"
132132

133-
A `$XDG_CONFIG_HOME/eca/commands` or `~/.config/eca/commands` folder containing `.md` files with the custom command prompt.
133+
A `$XDG_CONFIG_HOME/eca/commands` or `~/.config/eca/commands` folder containing `.md` files with the custom command prompt.
134134

135-
`~/.config/eca/commands/check-performance.mdc`
136-
```markdown
137-
Check for performance issues in $ARG1 and optimize if needed.
138-
```
135+
`~/.config/eca/commands/check-performance.mdc`
136+
```markdown
137+
Check for performance issues in $ARG1 and optimize if needed.
138+
```
139139

140-
### Config
140+
=== "Config"
141141

142-
Just add to your config the `commands` pointing to `.md` files that will be searched from the workspace root if not an absolute path:
142+
Just add to your config the `commands` pointing to `.md` files that will be searched from the workspace root if not an absolute path:
143143

144-
```javascript
145-
{
146-
"commands": [{"path": "my-custom-prompt.md"}]
147-
}
148-
```
144+
```javascript
145+
{
146+
"commands": [{"path": "my-custom-prompt.md"}]
147+
}
148+
```
149149

150150
## All configs
151151

152-
### Schema
153-
154-
```typescript
155-
interface Config {
156-
openaiApiKey?: string;
157-
openaiApiUrl?: string;
158-
anthropicApiKey?: string;
159-
anthropicApiUrl?: string;
160-
ollamaApiUrl: string;
161-
rules: [{path: string;}];
162-
commands: [{path: string;}];
163-
systemPromptTemplateFile?: string;
164-
nativeTools: {
165-
filesystem: {enabled: boolean};
166-
shell: {enabled: boolean,
167-
excludeCommands: string[]};
168-
};
169-
disabledTools: string[],
170-
toolCall?: {
171-
manualApproval?: boolean | string[], // manual approve all tools or the specified tools
172-
};
173-
mcpTimeoutSeconds: number;
174-
mcpServers: {[key: string]: {
175-
command: string;
176-
args?: string[];
177-
disabled?: boolean;
178-
}};
179-
customProviders: {[key: string]: {
180-
api: 'openai-responses' | 'openai-chat' | 'anthropic';
181-
models: string[];
182-
defaultModel?: string;
183-
url?: string;
184-
urlEnv?: string;
185-
completionUrlRelativePath?: string;
186-
key?: string;
187-
keyEnv?: string;
188-
}};
189-
models: {[key: string]: {
190-
extraPayload: {[key: string]: any}
191-
}};
192-
ollama?: {
193-
useTools: boolean;
194-
think: boolean;
195-
};
196-
chat?: {
197-
welcomeMessage: string;
198-
};
199-
agentFileRelativePath: string;
200-
index?: {
201-
ignoreFiles: [{
202-
type: string;
203-
}];
204-
repoMap?: {
205-
maxTotalEntries?: number;
206-
maxEntriesPerDir?: number;
152+
=== "Schema"
153+
154+
```typescript
155+
interface Config {
156+
openaiApiKey?: string;
157+
openaiApiUrl?: string;
158+
anthropicApiKey?: string;
159+
anthropicApiUrl?: string;
160+
ollamaApiUrl: string;
161+
rules: [{path: string;}];
162+
commands: [{path: string;}];
163+
systemPromptTemplateFile?: string;
164+
nativeTools: {
165+
filesystem: {enabled: boolean};
166+
shell: {enabled: boolean,
167+
excludeCommands: string[]};
207168
};
208-
};
209-
}
210-
```
169+
disabledTools: string[],
170+
toolCall?: {
171+
manualApproval?: boolean | string[], // manual approve all tools or the specified tools
172+
};
173+
mcpTimeoutSeconds: number;
174+
mcpServers: {[key: string]: {
175+
command: string;
176+
args?: string[];
177+
disabled?: boolean;
178+
}};
179+
customProviders: {[key: string]: {
180+
api: 'openai-responses' | 'openai-chat' | 'anthropic';
181+
models: string[];
182+
defaultModel?: string;
183+
url?: string;
184+
urlEnv?: string;
185+
completionUrlRelativePath?: string;
186+
key?: string;
187+
keyEnv?: string;
188+
}};
189+
models: {[key: string]: {
190+
extraPayload: {[key: string]: any}
191+
}};
192+
ollama?: {
193+
useTools: boolean;
194+
think: boolean;
195+
};
196+
chat?: {
197+
welcomeMessage: string;
198+
};
199+
agentFileRelativePath: string;
200+
index?: {
201+
ignoreFiles: [{
202+
type: string;
203+
}];
204+
repoMap?: {
205+
maxTotalEntries?: number;
206+
maxEntriesPerDir?: number;
207+
};
208+
};
209+
}
210+
```
211211

212-
### Default values
212+
=== "Default values"
213213

214-
```javascript
215-
{
216-
"openaiApiKey" : null,
217-
"openaiApiUrl" : null,
218-
"anthropicApiKey" : null,
219-
"anthropicApiUrl" : null,
220-
"ollamaApiUrl": "http://localhost:11434"
221-
"rules" : [],
222-
"commands" : [],
223-
"nativeTools": {"filesystem": {"enabled": true},
224-
"shell": {"enabled": true,
225-
"excludeCommands": []}},
226-
"disabledTools": [],
227-
"toolCall": {
228-
"manualApproval": null,
229-
},
230-
"mcpTimeoutSeconds" : 60,
231-
"mcpServers" : {},
232-
"customProviders": {},
233-
"models": {},
234-
"ollama" : {
235-
"useTools": true,
236-
"think": true
237-
},
238-
"chat" : {
239-
"welcomeMessage" : "Welcome to ECA!\n\nType '/' for commands\n\n"
240-
},
241-
"agentFileRelativePath": "AGENT.md"
242-
"index" : {
243-
"ignoreFiles" : [ {
244-
"type" : "gitignore"
245-
} ],
246-
"repoMap": {
247-
"maxTotalEntries": 800,
248-
"maxEntriesPerDir": 50
214+
```javascript
215+
{
216+
"openaiApiKey" : null,
217+
"openaiApiUrl" : null,
218+
"anthropicApiKey" : null,
219+
"anthropicApiUrl" : null,
220+
"ollamaApiUrl": "http://localhost:11434"
221+
"rules" : [],
222+
"commands" : [],
223+
"nativeTools": {"filesystem": {"enabled": true},
224+
"shell": {"enabled": true,
225+
"excludeCommands": []}},
226+
"disabledTools": [],
227+
"toolCall": {
228+
"manualApproval": null,
229+
},
230+
"mcpTimeoutSeconds" : 60,
231+
"mcpServers" : {},
232+
"customProviders": {},
233+
"models": {},
234+
"ollama" : {
235+
"useTools": true,
236+
"think": true
237+
},
238+
"chat" : {
239+
"welcomeMessage" : "Welcome to ECA!\n\nType '/' for commands\n\n"
240+
},
241+
"agentFileRelativePath": "AGENT.md"
242+
"index" : {
243+
"ignoreFiles" : [ {
244+
"type" : "gitignore"
245+
} ],
246+
"repoMap": {
247+
"maxTotalEntries": 800,
248+
"maxEntriesPerDir": 50
249+
}
250+
}
249251
}
250-
}
251-
}
252-
```
252+
```

0 commit comments

Comments
 (0)