134 Commits

Author SHA1 Message Date
RomneyDa
529d50a9be Filter out .md files when loading agent configs
During config loading in core, if any non-YAML files are in .continue/agents
or .continue/assistants directories, it tries to load them as configs. This
change filters out .md files by explicitly setting fileExtType to 'yaml' when
loading agent and assistant config profiles.

The getAllDotContinueDefinitionFiles function already supports filtering by
file extension type, but it wasn't being used in ConfigHandler. This ensures
only .yaml and .yml files are loaded as config profiles, preventing errors
when markdown documentation files exist in the agents/assistants directories.

Co-authored-by: dallin <dallin@continue.dev>
Generated with [Continue](https://continue.dev)

Co-Authored-By: Continue <noreply@continue.dev>
2026-01-14 22:16:59 +00:00
Aditya Mitra
fc5606cc3a feat: select org profile on sign in (#8859)
* feat: select org profile on sign in

* reset inside cascade init

* reset only when personl
2025-11-27 01:44:55 -08:00
Dallin Romney
d8021f5c5a fix: notify config listeners when no config available
Otherwise GUI gets out of sync with core
2025-11-20 00:55:18 -08:00
Dallin Romney
a3e5a14bd2 fix: only log sentry errors on reload not load (#8202) 2025-10-13 22:40:00 -07:00
Nate Sesti
16a3b978e7 Add isSignedIn to config reload telemetry (#8185) 2025-10-10 08:30:47 -07:00
Nate Sesti
f56d2b0a7b fix: improvements to next edit (#8129)
* refactor: autocomplete feedback

* fix: don't hardcode outcome to false on aborted completion

* fix: correctly parse out backticks

* fix: correctly parse out backticks

* fix: next edit diff formatting

* fix: reduce context lines

* improv: track profile type for autocomplete

* fix: lint err

* fix: test
2025-10-08 13:09:50 -07:00
Dallin Romney
e1d349cad7 Merge pull request #7409 from Jazzcort/fix-ideSettings-updating
Fix: Updated ideSettings didn't get passed properly
2025-09-08 21:13:11 -07:00
Jazzcort
712b7bcfd5 Fix: Refactor dependency injection for settings and clients
This commit refactors how IdeSettings and ControlPlaneClient are accessed throughout
the configuration system to improve state management and reduce coupling.

Previously, ideSettingsPromise was passed down from the top-level ConfigHandler
through various profile loaders and clients. This created a rigid dependency chain
and required manual promise replacement when settings were updated. Similarly,
downstream components could hold onto stale instances of ControlPlaneClient after a
change in authentication state.

The key changes are:
  - Removed ideSettingsPromise prop drilling: Components that require IDE settings
    now fetch them directly from the IDE object (ide.getIdeSettings()) when
    needed.

  - Updated globalLocalProfileManager during every cascadeInit: This ensures it
    always holds the most recent ControlPlaneClient, preventing issues with stale
    client objects after re-authentication.

  - Simplified constructors: The constructors for ConfigHandler, ControlPlaneClient,
    and various loaders have been simplified to reflect these changes, primarily by
    passing the IDE object directly instead of its derived promises.
2025-09-03 09:15:47 -04:00
Dallin Romney
50b0dec9c4 feat: org policies for indexing and mcp 2025-08-19 01:20:11 -07:00
Dallin Romney
73fdf19de8 feat: rebrand assistants as agents (#7227)
* feat: rebrand assistants as agents

* fix: assitant-agent cleanup part 1

* fix: file references

* fix: missing file reference in config yaml tests

* chore: assistant -> agent cleanup
2025-08-18 16:25:30 -07:00
Patrick Erichsen
85994118e8 feat: implement Sentry error tracking with privacy-first anonymization (#6881)
* feat: add sentry to core

* feat: implement comprehensive Sentry error tracking with privacy-first anonymization

- Add Sentry ErrorBoundary components following React best practices
- Implement shared anonymization logic between core and GUI environments
- Create organized sentry directory structure with clean exports
- Add Continue team member access control (@continue.dev email check)
- Preserve node_modules package names for debugging while anonymizing user paths
- Include comprehensive test coverage for all anonymization scenarios
- Set up source maps for readable production error stack traces
- Add browser-compatible hashing without crypto module dependency

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* feat: complete Sentry integration with GUI components and tests

- Add GUI TelemetryProviders with Sentry ErrorBoundary
- Create shared isContinueTeamMember utilities for both core and GUI
- Update all imports and dependencies for new sentry structure
- Add comprehensive test coverage and fix all TypeScript issues

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* prettier

* fix: resolve GUI build errors by removing sentry index.ts and using specific imports

- Remove problematic index.ts that was pulling Node.js-specific Sentry code into browser bundle
- Update GUI to import specifically from anonymization.ts and constants.ts files
- Update core imports to use specific SentryLogger.ts import path
- GUI build now succeeds with proper source map upload to Sentry

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: move TelemetryProviders inside AuthProvider to fix test failures

- Move TelemetryProviders from main.tsx to Layout.tsx inside AuthProvider
- Fixes "useAuth must be used within an AuthProvider" error in tests
- TelemetryProviders now has access to auth context for Continue team member check
- GUI build and functionality remain working correctly

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* prettier

* merge main

* Update package.json

* fix tests

* fix errors

* Update extension.ts

* disable sentry in tests/local dev

* add additional error handling

* Update SentryLogger.ts

* remove global try/catch

* remove test code

* linting

* Update SentryLogger.ts

* more logs

* Update core.ts

* lower sampling rate

* fix tests

* feat: use `Logger`

* Update logger.ts

* Update logger.ts

Co-Authored-By: Claude <noreply@anthropic.com>

* lint fixes

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: rename logger.ts to Logger.ts for case sensitivity

This fixes TypeScript compilation errors in CI where the file
was tracked as lowercase logger.ts but referenced as Logger.ts
in imports.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* address ting-wai's feedback

* Update core.ts

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-08-14 16:54:21 -07:00
Dallin Romney
56cf2abf20 feat: Respect Org Policies (#7087)
* fix: allow no selected org, respect policy

* feat: respect policies in extension

* fix: config handler test

* fix: context providers test
2025-08-11 19:20:07 -07:00
Dallin Romney
d4198e76ec Merge pull request #6769 from continuedev/dallin/catch-hub-loading-errors
fix: catch hub org loading errors, fallback to local
2025-08-05 13:15:58 -07:00
Dallin Romney
a78427c4f1 Config error UI improvements (#6912)
* wip:
conifg reload button

* fix: config loading reasons, reload links in extension error UIs

* fix: remove development config slice tweaks

* enhancement: better error component and move fatal error notice to below main input
2025-08-01 13:06:46 -07:00
Dallin Romney
6ba01825b4 fix: only update on session change when needed 2025-07-31 10:21:59 -07:00
Dallin Romney
3bd00d09fd fix: error injection order 2025-07-31 09:36:12 -07:00
Dallin Romney
5520d5b7e4 merge main 2025-07-31 09:34:22 -07:00
Tomasz Stefaniak
55f5ed580f fix: use loading state for loading indicator, better error messages 2025-07-24 12:11:31 -07:00
Dallin Romney
edd1a0b9ba fix: catch errors in hub org loading 2025-07-23 06:45:57 +02:00
Dallin Romney
37574cc55e fix: catch continue hub config loading errors 2025-07-23 05:41:17 +02:00
Fred Bricon
89a7d9a0c2 fix: open the proper config file
Signed-off-by: Fred Bricon <fbricon@gmail.com>
2025-07-21 10:30:04 +02:00
Patrick Erichsen
759159d849 Merge branch 'main' into pe/req-headers 2025-07-17 08:42:50 -07:00
Dallin Romney
374a0cb23c comment out reload config loading 2025-07-16 14:45:00 +02:00
Dallin Romney
c869b8c836 fix has attempted refresh logic 2025-07-16 14:27:21 +02:00
Dallin Romney
3a96b82e02 event emmiter initialization approach, get orgs in parallel 2025-07-16 14:03:32 +02:00
Dallin Romney
18fe286993 cleanup config fixes 2025-07-15 19:03:03 +02:00
Patrick Erichsen
a0174bcf07 fix linting 2025-07-13 17:55:25 -07:00
Patrick Erichsen
d45e2118b5 Add telemetry tracking for config loading performance
- Import Telemetry from util/posthog.js in ConfigHandler
- Track start and end time of reloadConfig method using performance.now()
- Send "config_reload" telemetry event with duration, reason, totalConfigLoads, and configLoadInterrupted
- Helps track config loading performance bottlenecks and understand reload patterns

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-13 17:53:38 -07:00
Dallin Romney
2da461e110 reload config logs, await cascade init, cascade abort controller, client signals 2025-07-12 00:40:44 -07:00
Patrick Erichsen
2768540f96 chore: add ideInfo headers to hub reqs 2025-07-11 21:25:10 -07:00
Tomasz Stefaniak
ba3984290d fix: naming 2025-05-20 13:24:33 -07:00
Nate
75608e7cf4 disable local assistants when using on prem deployment 2025-05-18 19:37:41 -07:00
Nate
8f0978a5e1 separate SessionInfo types 2025-05-18 18:14:50 -07:00
Dallin Romney
47755d1cba fix: selected profile id writing to global context in org profile rectification 2025-05-13 13:58:05 -07:00
Nate
4b55cfb2e8 fix: 🚑 load global ~/.continue/assistants 2025-05-05 19:17:46 -07:00
Nate
cd9d63643f error on no-floating-promises in core 2025-04-29 15:11:35 -07:00
Nate
79f4274fc6 remove logs 2025-04-23 17:47:15 -07:00
Nate
54d2b4774c more logging and a small fix 2025-04-23 08:35:39 -07:00
Nate
b53a257cf0 Merge branch 'main' into nate/local-blocks 2025-04-21 16:14:14 -07:00
Nate
f576742e35 remove cft 2025-04-16 21:43:41 -07:00
Nate
70883e4325 log config errors 2025-04-11 22:14:59 -07:00
Nate
75985f94ad Merge branch 'main' into nate/local-blocks 2025-04-09 11:27:39 -07:00
Tomasz Stefaniak
a4cfa361c2 Merge pull request #5077 from continuedev/tomasz/clean-up-code-2
improv: stricter linting
2025-04-09 09:34:01 -07:00
tomasz-io
f6ecad7cce improv: stricter linting 2025-04-09 08:47:49 -07:00
Patrick Erichsen
7f8882eee1 feat: remove models property 2025-04-08 19:28:48 -07:00
Nate
a807a6b56c small refactor to make it easy to list .continue/rules, etc. 2025-04-08 15:41:06 -07:00
Nate
b66fe4185b load ~/.continue/assistants 2025-04-08 15:17:43 -07:00
Nate
aa2aff01c0 include workspace assistants when in org scope 2025-04-08 15:07:11 -07:00
Owen W. Taylor
3553dfaae4 Add rich logging of LLM interactions
Instead of treating LLM logging as simply writing lines of text
sequentially, emit a stream of typed data objects that include
rich information about the interaction, such as timestamps,
message types, tool calls, etc.

These are then collected by a new custom webview in the vscode
extension (the "Continue Console"), allowing a user or developer
to browse through the different interactions and view them in detail.
In progress interactions are now streamed live, instead of being held back
to avoid concurrency issues.

This webview could be also exposed for IntelliJ or file logging
could be reimplemented on top of the new framework.
2025-04-07 14:11:38 -04:00
Dallin Romney
dda3168957 fixes 2025-04-06 15:55:07 -07:00