Skip to content

Commit 06c2206

Browse files
Merge branch 'main' into tomasz/fix-always-apply
2 parents 75f8afa + 0d02784 commit 06c2206

File tree

17 files changed

+205
-47
lines changed

17 files changed

+205
-47
lines changed
Lines changed: 105 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,111 @@
11
---
2-
globs: docs/**/*.{md,mdx}
3-
description: Standards for writing and maintaining Continue Docs
2+
globs: docs/\*_/_.{md,mdx}
3+
description: This style guide should be used as a reference for maintaining consistency across all Continue documentation
4+
alwaysApply: false
45
---
56

6-
# Continue Docs Standards
7+
# Continue Documentation Style Guide
8+
9+
## Overview
10+
11+
## Writing Tone & Voice
12+
13+
### Conversational and Direct
714

815
- Follow Docusaurus documentation standards
9-
- Include YAML frontmatter with title, description, and keywords
10-
- Use consistent heading hierarchy starting with h2 (##)
11-
- Include relevant Admonition components for tips, warnings, and info
12-
- Use descriptive alt text for images
13-
- Include cross-references to related documentation
14-
- Reference other docs with relative paths
16+
- Use simple, conversational language that gets straight to the point
17+
- Avoid overly technical jargon when simpler terms work
18+
- Write as if speaking directly to the developer using the tool
1519
- Keep paragraphs concise and scannable
16-
- Use code blocks with appropriate language tags
20+
21+
**Example:**
22+
✅ "You send it a question, and it replies with an answer"
23+
❌ "The system processes user queries and generates corresponding responses"
24+
25+
### Helpful and Instructional
26+
27+
- Focus on helping users accomplish their goals
28+
- Use active voice and imperative mood for instructions
29+
- Assume users want to get things done quickly
30+
- Include relevant Admonition components for tips, warnings, and info
31+
32+
**Example:**
33+
✅ "Press cmd/ctrl + L to begin a new session"
34+
❌ "A new session can be initiated by pressing cmd/ctrl + L"
35+
36+
### Practical and Task-Oriented
37+
38+
- Emphasize what users can accomplish with each feature
39+
- Lead with benefits and use cases before diving into mechanics
40+
- Keep explanations grounded in real-world scenarios
41+
42+
## Content Structure
43+
44+
### Page Organization
45+
46+
1. **Visual Introduction**: Lead with GIFs or images showing the feature in action
47+
2. **Purpose Statement**: Brief explanation of what the feature does and when to use it
48+
3. **Step-by-Step Instructions**: Clear, actionable steps with keyboard shortcuts
49+
4. **Platform-Specific Notes**: Separate sections for VS Code and JetBrains when needed
50+
5. **Additional Tips**: Advanced usage or troubleshooting notes
51+
52+
### Section Headers
53+
54+
- Use consistent heading hierarchy starting with h2 (##)
55+
- Include YAML frontmatter with title, description, and keywords
56+
- Use action-oriented headers that describe what users will do
57+
- Format: "Verb + object" (e.g., "Type a request and press enter")
58+
- Keep headers concise but descriptive
59+
- Use title case
60+
61+
**Examples:**
62+
✅ "Highlight code and activate"
63+
✅ "Accept or reject changes"
64+
✅ "Switch between different models"
65+
66+
### Lists and Steps
67+
68+
- Use numbered lists for sequential steps
69+
- Use bullet points for feature lists or options
70+
- Keep list items parallel in structure
71+
- Start action items with verbs
72+
73+
## Technical Writing Standards
74+
75+
### Code and Keyboard Shortcuts
76+
77+
- Use `backticks` for inline code elements
78+
- Format keyboard shortcuts consistently: `cmd/ctrl + L`
79+
- Always provide shortcuts for Mac/Windows/Linux
80+
- Use code blocks for configuration examples with proper syntax highlighting
81+
82+
### Cross-References
83+
84+
- Link to related sections using descriptive anchor text
85+
- Use relative links to other documentation pages
86+
- Format: `[descriptive text](/path/to/page)`
87+
88+
### Platform Differences
89+
90+
- Always address both VS Code and JetBrains when applicable
91+
- Use clear subheadings to separate platform-specific instructions
92+
- Lead with the more common platform (typically VS Code) when both are covered
93+
94+
## Language Conventions
95+
96+
### Terminology
97+
98+
- **Consistent Terms**: Use the same terms throughout (e.g., "LLM" not "AI model" in some places)
99+
- **Product Names**: Capitalize product names correctly (VS Code, JetBrains, Continue)
100+
- **Feature Names**: Use consistent capitalization for Continue features (Chat, Edit, Agent, Autocomplete)
101+
102+
### Abbreviations
103+
104+
- Spell out acronyms on first use, then use abbreviation consistently
105+
- Common abbreviations: LLM, IDE, API, URL
106+
107+
### Pronouns
108+
109+
- Use "you" to address the user directly
110+
- Use "it" to refer to the tool/model
111+
- Avoid "we" unless referring to the Continue team

.github/workflows/pr_checks.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -439,7 +439,7 @@ jobs:
439439
GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }}
440440
MISTRAL_API_KEY: ${{ secrets.MISTRAL_API_KEY }}
441441
AZURE_OPENAI_API_KEY: ${{ secrets.AZURE_OPENAI_API_KEY }}
442-
AZURE_FOUNDRY_API_KEY: ${{ secrets.AZURE_FOUNDRY_API_KEY }}
442+
AZURE_FOUNDRY_CODESTRAL_API_KEY: ${{ secrets.AZURE_FOUNDRY_CODESTRAL_API_KEY }}
443443
AZURE_FOUNDRY_MISTRAL_SMALL_API_KEY: ${{ secrets.AZURE_FOUNDRY_MISTRAL_SMALL_API_KEY }}
444444
AZURE_OPENAI_GPT41_API_KEY: ${{ secrets.AZURE_OPENAI_GPT41_API_KEY }}
445445

binary/package-lock.json

Lines changed: 12 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

binary/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@
5353
"posthog-node": "^3.6.3",
5454
"system-ca": "^1.0.2",
5555
"tar": "^7.4.3",
56+
"undici": "^7.10.0",
5657
"uuid": "^9.0.1",
5758
"vectordb": "^0.4.20",
5859
"win-ca": "^3.5.1"

binary/utils/ripgrep.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ const { rimrafSync } = require("rimraf");
44
const tar = require("tar");
55
const { RIPGREP_VERSION, TARGET_TO_RIPGREP_RELEASE } = require("./targets");
66
const AdmZip = require("adm-zip");
7+
const { ProxyAgent } = require("undici");
78

89
const RIPGREP_BASE_URL = `https://github.com/BurntSushi/ripgrep/releases/download/${RIPGREP_VERSION}`;
910

@@ -16,8 +17,13 @@ const RIPGREP_BASE_URL = `https://github.com/BurntSushi/ripgrep/releases/downloa
1617
*/
1718
async function downloadFile(url, destPath) {
1819
// Use the built-in fetch API instead of node-fetch
20+
// Use proxy if set in environment variables
21+
const proxy = process.env.https_proxy || process.env.HTTPS_PROXY;
22+
const agent = proxy ? new ProxyAgent(proxy) : undefined;
23+
1924
const response = await fetch(url, {
2025
redirect: "follow", // Automatically follow redirects
26+
dispatcher: agent,
2127
});
2228

2329
if (!response.ok) {

core/llm/llm.test.ts

Lines changed: 7 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -161,12 +161,7 @@ function testLLM(
161161
group: "Hello",
162162
},
163163
],
164-
toolChoice: {
165-
type: "function",
166-
function: {
167-
name: "say_hello",
168-
},
169-
},
164+
toolChoice: { type: "function", function: { name: "say_hello" } },
170165
},
171166
)) {
172167
const typedChunk = chunk as AssistantChatMessage;
@@ -211,10 +206,7 @@ describe("LLM", () => {
211206
model: "claude-3-5-sonnet-latest",
212207
apiKey: process.env.ANTHROPIC_API_KEY,
213208
}),
214-
{
215-
skip: false,
216-
testToolCall: true,
217-
},
209+
{ skip: false, testToolCall: true },
218210
);
219211
testLLM(new OpenAI({ apiKey: process.env.OPENAI_API_KEY, model: "gpt-4o" }), {
220212
skip: false,
@@ -240,12 +232,7 @@ describe("LLM", () => {
240232
apiKey: process.env.MISTRAL_API_KEY,
241233
model: "codestral-latest",
242234
}),
243-
{
244-
testFim: true,
245-
skip: false,
246-
testToolCall: true,
247-
timeout: 60000,
248-
},
235+
{ testFim: true, skip: false, testToolCall: true, timeout: 60000 },
249236
);
250237
testLLM(
251238
new Azure({
@@ -260,11 +247,10 @@ describe("LLM", () => {
260247
);
261248
testLLM(
262249
new Azure({
263-
apiKey: process.env.AZURE_FOUNDRY_API_KEY,
264-
model: "codestral-latest",
265-
apiBase:
266-
"https://codestral-2501-continue-testing.eastus.models.ai.azure.com",
267-
apiType: "azure-foundry",
250+
apiKey: process.env.AZURE_FOUNDRY_CODESTRAL_API_KEY,
251+
model: "Codestral-2501",
252+
apiBase: "https://continue-foundry-resource.services.ai.azure.com",
253+
env: { apiType: "azure-foundry", apiVersion: "2024-05-01-preview" },
268254
}),
269255
{ testFim: false, skip: false, timeout: 20000 },
270256
);

docs/docs/customize/model-providers/top-level/anthropic.mdx

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ We recommend configuring **Claude 4 Sonnet** as your chat model.
3131
{
3232
"title": "Claude 4 Sonnet",
3333
"provider": "anthropic",
34-
"model": "claude-sonnet-4-20250514",
34+
"model": "claude-sonnet-4-latest",
3535
"apiKey": "<YOUR_ANTHROPIC_API_KEY>"
3636
}
3737
]
@@ -68,9 +68,6 @@ Prompt caching is generally available for:
6868
- Claude 3.7 Sonnet
6969
- Claude 3.5 Sonnet
7070
- Claude 3.5 Haiku
71-
- Claude 3 Opus
72-
- Claude 3 Sonnet
73-
- Claude 3 Haiku
7471

7572
To enable caching of the system message and the turn-by-turn conversation, update your model configuration as follows:
7673

@@ -84,9 +81,8 @@ To enable caching of the system message and the turn-by-turn conversation, updat
8481
apiKey: <YOUR_ANTHROPIC_API_KEY>
8582
roles:
8683
- chat
87-
cacheBehavior:
88-
cacheSystemMessage: true
89-
cacheConversation: true
84+
defaultCompletionOptions:
85+
promptCaching: true
9086
```
9187
</TabItem>
9288
<TabItem value="json" label="JSON">
@@ -100,7 +96,10 @@ To enable caching of the system message and the turn-by-turn conversation, updat
10096
},
10197
"title": "Anthropic",
10298
"provider": "anthropic",
103-
"model": "claude-sonnet-4-20250514",
99+
"model": "claude-sonnet-4-latest",
100+
"defaultCompletionOptions": {
101+
"promptCaching": true
102+
},
104103
"apiKey": "<YOUR_ANTHROPIC_API_KEY>"
105104
}
106105
]

docs/docusaurus.config.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -203,6 +203,14 @@ const config = {
203203
},
204204
}),
205205
plugins: [
206+
[
207+
"posthog-docusaurus",
208+
{
209+
apiKey: process.env.POSTHOG_API_KEY || "DEV",
210+
appUrl: "https://us.i.posthog.com",
211+
enableInDevelopment: false,
212+
},
213+
],
206214
[
207215
"@docusaurus/plugin-client-redirects",
208216
{

docs/package-lock.json

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
"@docusaurus/preset-classic": "^3.7.0",
2323
"@mdx-js/react": "^3.0.0",
2424
"clsx": "^2.1.0",
25+
"posthog-docusaurus": "^2.0.4",
2526
"prism-react-renderer": "^2.3.1",
2627
"react": "^18.2.0",
2728
"react-dom": "^18.2.0"

0 commit comments

Comments
 (0)