协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
component-development【开发与工程】Create and maintain Langflow Python components, extension bundles, component indexes, and component tests.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Use this sub-skill when adding, updating, packaging, or testing Langflow Python components. It covers Component subclasses, inputs/outputs, extension bundles, dynamic loading, component index rebuilds, and component test structure.
inputs, outputs, Message/Data/DataFrame returns, bundle manifests, extension entry points, LFX_DEV, component index rebuilds, and component unit tests.../backend-runtime/SKILL.md.../frontend-development/SKILL.md.../repo-maintenance/SKILL.md.name attribute unless you intentionally create a new component and keep the old one as legacy = True.Component subclass with stable metadata, serializable inputs, and Output(..., method="...") entries that point to real instance methods.Message, Data, DataFrame) or integration objects expected by downstream handles; avoid returning raw provider responses unless the output contract says so.extension.json or [tool.langflow.extension] manifest and a langflow.extensions entry point.references/component-api.md explains component class shape, metadata, inputs, outputs, return values, async behavior, and compatibility rules.references/bundles-and-indexes.md explains extension manifests, pyproject entry points, bundle IDs, dynamic loading, and component index rebuilds.references/troubleshooting.md maps common import, schema, CLI/API, runtime, credential, network, and hardware failures to fixes.Run the local skeleton checker from this skill tree before deeper tests:
python scripts/check_component_skeleton.py path/to/component.py
python scripts/check_component_skeleton.py path/to/component.py --class MyComponent --import-module
The default mode parses Python only and is safe for components with missing optional dependencies. --import-module performs runtime checks and can import provider SDKs, so use it only in an environment with the component's dependencies installed.
Use the smallest safe command that covers the change:
python -m py_compile path/to/component.py
python scripts/check_component_skeleton.py path/to/component.py
make build_component_index
lfx extension validate path/to/extension/root
python -m pytest src/backend/tests/unit/components/<category>/test_<component>.py -q
For components requiring API keys, databases, GPUs, local OCR, Torch, or network services, keep the static checks runnable and mark native tests with the appropriate skip/credential guard instead of forcing credentials into tests.
This guidance is distilled from Langflow component contribution docs, component test docs, extension manifest docs, the lfx Component implementation, the langflow compatibility shim, IO exports, bundle pyproject.toml/manifest patterns, the component index builder, and existing component tests. Runtime files here are self-contained; source paths are evidence names, not required reading for future agents.