ContextAnalyzer class
Analyzes context window usage and provides visualization data.
- Inheritance
-
- Object
- Listenable
- ListNotifier
- SintController
- ContextAnalyzer
Constructors
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- initialized → bool
-
Checks whether the controller has already been initialized.
no setterinherited
- isClosed → bool
-
Checks whether the controller has already been closed.
no setterinherited
- isDisposed → bool
-
no setterinherited
-
latestAnalysis
→ Rxn<
ContextData> -
The latest context analysis result.
final
- listenersLength → int
-
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
addListener(
SintStateUpdate listener) → Disposer -
Register a closure to be called when the object notifies its listeners.
inherited
-
addListenerId(
Object? key, SintStateUpdate listener) → Disposer -
inherited
-
analyzeContextUsage(
{required List< Map< messages, required String model, required int systemPromptTokens, required int neomageMdTokens, required int builtInToolTokens, required int mcpToolTokens, required int agentTokens, required int slashCommandTokens, required int skillFrontmatterTokens, required int messageTokens, required int deferredToolTokens, required int deferredBuiltinTokens, required List<String, dynamic> >MemoryFile> memoryFileDetails, required List<McpTool> mcpToolDetails, required List<AgentInfo> agentDetails, List<DeferredBuiltinTool> ? deferredBuiltinDetails, List<SystemToolDetail> ? systemToolDetails, List<SystemPromptSectionDetail> ? systemPromptSections, SlashCommandInfo? commandInfo, SkillInfo? skillInfo, MessageBreakdown? messageBreakdownDetail, int? terminalWidth}) → Future<ContextData> - Analyzes context window usage for display.
-
approximateMessageBreakdown(
List< Map< messages) → MessageBreakdownString, dynamic> > - Approximate token usage by message type.
-
buildGrid(
{required List< ContextCategory> categories, required int contextWindow, int? terminalWidth}) → List<List< GridSquare> > - Build the grid visualization from categories.
-
configure(
{Future< int?> countTokensWithFallback(List<Map< , List<String, dynamic> >Map< )?, int roughTokenCountEstimation(String)?, int getEffectiveContextWindowSize(String)?, int getContextWindowForModel(String)?, bool isAutoCompactEnabled()?, ApiUsage? getCurrentUsage(List<String, dynamic> >Map< )?, void logForDebugging(String)?, void logError(Object)?}) → voidString, dynamic> > -
containsListener(
SintStateUpdate listener) → bool -
inherited
-
countMemoryFileTokens(
List< ({String content, String path, String type})> memoryFiles) → Future<({List< MemoryFile> details, int neomageMdTokens})> - Count memory file tokens.
-
countSystemTokens(
List< String> effectiveSystemPrompt) → Future<({List< SystemPromptSectionDetail> sections, int systemPromptTokens})> - Count system prompt tokens.
-
countToolDefinitionTokens(
List< Map< tools) → Future<String, dynamic> >int> - Count tokens for a list of tool definitions.
-
debounce<
T> (RxInterface< T> rx, void callback(T), {Duration duration = const Duration(milliseconds: 400)}) → void -
Calls
callbackafterrxstops changing forduration. Useful for search-as-you-type, form validation, etc.inherited -
dispose(
) → void -
inherited
-
ever<
T> (RxInterface< T> rx, void callback(T)) → void -
Calls
callbackevery timerxchanges. Auto-cancels on controller disposal.inherited -
interval<
T> (RxInterface< T> rx, void callback(T), {Duration duration = const Duration(seconds: 1)}) → void -
Calls
callbackat most once perduration, ignoring intermediate changes. Useful for rate-limiting UI updates.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
once<
T> (RxInterface< T> rx, void callback(T)) → void -
Calls
callbackonly the first timerxchanges, then cancels.inherited -
onClose(
) → void -
Called before onDelete method. onClose might be used to
dispose resources used by the controller. Like closing events,
or streams before the controller is destroyed.
Or dispose objects that can potentially create some memory leaks,
like TextEditingControllers, AnimationControllers.
Might be useful as well to persist some data on disk.
inherited
-
onDelete(
) → void -
inherited
-
onInit(
) → void -
Called immediately after the widget is allocated in memory.
You might use this to initialize something for the controller.
override
-
onReady(
) → void -
Called 1 frame after onInit(). It is the perfect place to enter
navigation events, like snackbar, dialogs, or a new route, or
async request.
inherited
-
onStart(
) → void -
Called at the exact moment the widget is allocated in memory.
It uses an internal "callable" type, to avoid any @overrides in subclasses.
This method should be internal and is required to define the
lifetime cycle of the subclass.
inherited
-
refresh(
) → void -
inherited
-
refreshGroup(
Object id) → void -
inherited
-
removeListener(
VoidCallback listener) → void -
Remove a previously registered closure from the list of closures that the
object notifies.
inherited
-
removeListenerId(
Object id, VoidCallback listener) → void -
inherited
-
reportAdd(
VoidCallback disposer) → void -
inherited
-
reportRead(
) → void -
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
update(
[List< Object> ? ids, bool condition = true]) → void -
Notifies listeners to update the UI.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
extractSectionName(
String content) → String - Extract a human-readable name from a system prompt section's content.