Table of Contents

Class SkillLifecycleManager

Namespace
JD.AI.Core.Skills
Assembly
JD.AI.Core.dll

Discovers SKILL.md files, resolves precedence, evaluates eligibility gates, and provides per-run scoped environment injection.

public sealed class SkillLifecycleManager : IDisposable
Inheritance
SkillLifecycleManager
Implements
Inherited Members

Constructors

SkillLifecycleManager(IEnumerable<SkillSourceDirectory>, string?, string?, Func<string, bool>?, Func<bool>?, Func<string, string?>?, Func<IDictionary>?, Func<string>?)

public SkillLifecycleManager(IEnumerable<SkillSourceDirectory> sources, string? userConfigPath = null, string? workspaceConfigPath = null, Func<string, bool>? binaryExists = null, Func<bool>? isWindows = null, Func<string, string?>? getEnvironmentVariable = null, Func<IDictionary>? getEnvironmentVariables = null, Func<string>? platformProvider = null)

Parameters

sources IEnumerable<SkillSourceDirectory>
userConfigPath string
workspaceConfigPath string
binaryExists Func<string, bool>
isWindows Func<bool>
getEnvironmentVariable Func<string, string>
getEnvironmentVariables Func<IDictionary>
platformProvider Func<string>

Methods

BeginRunScope()

Creates a run-scoped environment injection context for eligible skills.

public IDisposable BeginRunScope()

Returns

IDisposable

Dispose()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

public void Dispose()

FormatStatusReport()

Renders a deterministic, explainable skills status report.

public string FormatStatusReport()

Returns

string

GetSnapshot()

Returns the current snapshot, refreshing if needed.

public SkillSnapshot GetSnapshot()

Returns

SkillSnapshot

TryRefresh(out SkillSnapshot)

Refreshes skill state when underlying files/config/environment changed.

public bool TryRefresh(out SkillSnapshot snapshot)

Parameters

snapshot SkillSnapshot

Returns

bool

true when the active snapshot changed.