Settings.ExternalConfigs (fnord v0.9.33)
View SourcePer-project toggles controlling whether fnord loads Cursor rules, Cursor skills, Claude Code skills, and Claude Code subagents from the project's source tree and the user's home directory.
All toggles default to false - external configs are opt-in per project.
Flags live under ["projects"][name]["external_configs"] in settings.json
and are keyed in colon-namespaced form for both CLI input and on-disk
persistence:
"external_configs": {
"cursor:rules": true,
"cursor:skills": false,
"claude:skills": true,
"claude:agents": true
}Internally, sources are Elixir atoms (:cursor_rules etc.); the colon
form is a boundary representation only. See source_to_string/1 and
source_from_string/1.
Summary
Functions
Is the source enabled for the currently selected project?
Is the source enabled for the named project?
Returns the flags for the currently selected project, or an all-false map when no project is selected.
Returns the flags for the named project, or an all-false map when the
project has no external_configs settings.
Enable or disable a source for the named project. Returns the new flags.
Parse a colon-namespaced source string into its internal atom. Returns
{:ok, source} on a known value, {:error, {:invalid_source, raw}}
otherwise.
The list of valid source strings, in declaration order.
Render a source atom as its user-facing colon-namespaced string.
All supported external-config sources.
Types
Functions
Is the source enabled for the currently selected project?
Is the source enabled for the named project?
@spec flags() :: flags()
Returns the flags for the currently selected project, or an all-false map when no project is selected.
Returns the flags for the named project, or an all-false map when the
project has no external_configs settings.
Enable or disable a source for the named project. Returns the new flags.
Parse a colon-namespaced source string into its internal atom. Returns
{:ok, source} on a known value, {:error, {:invalid_source, raw}}
otherwise.
@spec source_strings() :: [String.t()]
The list of valid source strings, in declaration order.
Render a source atom as its user-facing colon-namespaced string.
@spec sources() :: [source()]
All supported external-config sources.