From 6709cb5171a2dbd80b52584387b6a6c17f39f299 Mon Sep 17 00:00:00 2001 From: gigo Date: Sat, 16 May 2026 11:17:44 +0800 Subject: [PATCH] Align capability bundle terminology --- CMakeLists.txt | 10 +++--- README.md | 12 +++---- include/{ec_skill.h => ec_capability.h} | 31 +++++++------------ include/ec_config.h | 6 ++-- include/ec_hw_datasheet.h | 6 ++-- include/ec_hw_example_asic.h | 2 +- include/ec_tool.h | 4 +-- plan.md | 18 +++++------ spec.md | 10 +++--- src/app/ec_posix_main.c | 8 ++--- src/core/{ec_skill.c => ec_capability.c} | 6 ++-- ...ec_skill_table.c => ec_capability_table.c} | 6 ++-- src/core/ec_tool.c | 4 +-- src/platform/freertos/ec_freertos_entry.c | 6 ++-- tests/test_e2e.c | 10 +++--- tests/test_host_sim.c | 6 ++-- 16 files changed, 69 insertions(+), 76 deletions(-) rename include/{ec_skill.h => ec_capability.h} (74%) rename src/core/{ec_skill.c => ec_capability.c} (95%) rename src/core/{ec_skill_table.c => ec_capability_table.c} (99%) diff --git a/CMakeLists.txt b/CMakeLists.txt index c72fca0..64a27d7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -73,8 +73,8 @@ set(EC_CORE_SOURCES src/core/ec_session.c src/core/ec_agent.c src/core/ec_io.c - src/core/ec_skill.c - src/core/ec_skill_table.c + src/core/ec_capability.c + src/core/ec_capability_table.c ) if(EC_PLATFORM STREQUAL "POSIX") @@ -153,8 +153,8 @@ if(EC_PLATFORM STREQUAL "POSIX") src/core/ec_io.c src/platform/posix/ec_io_posix_uart.c src/platform/posix/ec_io_posix_telnet.c - src/core/ec_skill.c - src/core/ec_skill_table.c + src/core/ec_capability.c + src/core/ec_capability_table.c ) add_executable(embedclaw_tests @@ -163,7 +163,7 @@ if(EC_PLATFORM STREQUAL "POSIX") tests/test_e2e.c ) target_include_directories(embedclaw_tests PRIVATE include tests) - # Tests use mock HTTP — force TLS off so ec_skill_table.c doesn't try + # Tests use mock HTTP — force TLS off so ec_capability_table.c doesn't try # to include mbedTLS headers target_compile_definitions(embedclaw_tests PRIVATE EC_CONFIG_USE_TLS=0) diff --git a/README.md b/README.md index f8f4e87..c3b20d3 100644 --- a/README.md +++ b/README.md @@ -52,7 +52,7 @@ It is the embedded counterpart to OpenClaw — same agentic loop, same OpenAI to │ │ ▼ ▼ ┌────────────┐ ┌─────────────────────────────────────┐ -│ Model Adapter │ │ Skill System (ec_skill) │ +│ Model Adapter │ │ Capability Bundles (ec_capability) │ │ (ec_model) │ │ ┌───────────────────────────────┐ │ │ provider │ │ │ hw_register_control │ │ │ selection │ │ │ hw_register_read/write │ │ @@ -83,7 +83,7 @@ It is the embedded counterpart to OpenClaw — same agentic loop, same OpenAI to The source tree follows the same boundary: ```text -src/core/ Agent, model, HTTP, JSON, session, tools, skills +src/core/ Agent, model, HTTP, JSON, session, tools, capability bundles src/platform/posix/ POSIX socket, stdin/stdout UART shim, Telnet, mock MMIO src/platform/freertos/ FreeRTOS+TCP, UART HAL bridge, Telnet, direct MMIO src/platform/baremetal/ UART HAL bridge, socket HAL bridge, direct MMIO @@ -310,16 +310,16 @@ All limits are compile-time constants in `include/ec_config.h`: | `EC_CONFIG_MAX_HISTORY` | `64` | Max messages in conversation history | | `EC_CONFIG_MAX_TOOL_CALLS` | `4` | Max tool calls per LLM response | | `EC_CONFIG_MAX_AGENT_ITERS` | `8` | Max tool-call iterations per turn | -| **Tool / skill framework** | | | +| **Tool / capability bundle framework** | | | | `EC_CONFIG_MAX_TOOLS` | `16` | Max registered tools | -| `EC_CONFIG_MAX_SKILLS` | `16` | Max registered capability bundles | +| `EC_CONFIG_MAX_CAPABILITY_BUNDLES` | `16` | Max registered capability bundles | | `EC_CONFIG_SYSTEM_PROMPT_BUF` | `2048` | Combined system prompt buffer (bytes) | | **I/O layer** | | | | `EC_CONFIG_IO_LINE_BUF` | `256` | User input line buffer (bytes) | | `EC_CONFIG_TELNET_PORT` | `2323` | Telnet listen port | | `EC_CONFIG_UART_RX_TIMEOUT_MS` | `100` | FreeRTOS UART read poll timeout (ms) | | `EC_CONFIG_UART_TX_TIMEOUT_MS` | `1000` | FreeRTOS UART write timeout (ms) | -| **Web browsing skill** | | | +| **Web browsing capability bundle** | | | | `EC_CONFIG_BRAVE_API_HOST` | `api.search.brave.com` | Brave Search API hostname | | `EC_CONFIG_BRAVE_API_PORT` | `443` | Brave Search API port | | `EC_CONFIG_BRAVE_API_KEY` | `BSA-CHANGE-ME` | Brave Search subscription token | @@ -472,7 +472,7 @@ const ec_hw_module_t *EC_HW_MODULES = s_my_modules; const size_t EC_HW_MODULE_COUNT = sizeof(s_my_modules) / sizeof(s_my_modules[0]); ``` -Then include your header from `ec_skill_table.c` in place of `ec_hw_example_asic.h`. +Then include your header from `ec_capability_table.c` in place of `ec_hw_example_asic.h`. --- diff --git a/include/ec_skill.h b/include/ec_capability.h similarity index 74% rename from include/ec_skill.h rename to include/ec_capability.h index 9d86fb1..6d342f0 100644 --- a/include/ec_skill.h +++ b/include/ec_capability.h @@ -1,5 +1,5 @@ -#ifndef EC_SKILL_H -#define EC_SKILL_H +#ifndef EC_CAPABILITY_H +#define EC_CAPABILITY_H #include "ec_tool.h" #include "ec_config.h" @@ -25,7 +25,7 @@ typedef enum { * - tools[] — tool definitions registered with the tool * framework and advertised to the LLM. * - * Bundles are defined in ec_skill_table.c. That is the only file you + * Bundles are defined in ec_capability_table.c. That is the only file you * need to edit to add, remove, or reconfigure capabilities. */ typedef struct { @@ -38,44 +38,37 @@ typedef struct { ec_capability_policy_t policy; } ec_capability_bundle_t; -/* Backward-compatible alias while the rest of the codebase transitions. */ -typedef ec_capability_bundle_t ec_skill_t; - /* ------------------------------------------------------------------------- - * Skill table — defined in ec_skill_table.c, referenced here. + * Capability table — defined in ec_capability_table.c, referenced here. * ------------------------------------------------------------------------- */ extern const ec_capability_bundle_t *EC_CAPABILITY_TABLE; extern const size_t EC_CAPABILITY_TABLE_COUNT; -/* Backward-compatible aliases while callers migrate to the new terminology. */ -#define EC_SKILL_TABLE EC_CAPABILITY_TABLE -#define EC_SKILL_TABLE_COUNT EC_CAPABILITY_TABLE_COUNT - /* - * Base system prompt — defined in ec_skill_table.c. - * Describes the device personality before any skill contexts are appended. + * Base system prompt — defined in ec_capability_table.c. + * Describes the device personality before any capability contexts are appended. */ extern const char EC_BASE_SYSTEM_PROMPT[]; /* ------------------------------------------------------------------------- - * Skill framework API + * Capability bundle API * ------------------------------------------------------------------------- */ /** - * Initialise the skill framework. + * Initialise the capability bundle framework. * Iterates EC_CAPABILITY_TABLE, registers every tool with ec_tool, and builds * the combined system prompt. Call once at startup before the agent loop. */ -void ec_skill_init(void); +void ec_capability_init(void); /** - * Return the combined system prompt built by ec_skill_init(): + * Return the combined system prompt built by ec_capability_init(): * EC_BASE_SYSTEM_PROMPT + each capability bundle's system_context/policy_note * The returned pointer is to a static buffer valid for the lifetime of * the program. */ -const char *ec_skill_get_system_prompt(void); +const char *ec_capability_get_system_prompt(void); const ec_capability_bundle_t *ec_capability_bundles(size_t *count); const char *ec_capability_policy_name(ec_capability_policy_t policy); @@ -84,4 +77,4 @@ const char *ec_capability_policy_name(ec_capability_policy_t policy); } #endif -#endif /* EC_SKILL_H */ +#endif /* EC_CAPABILITY_H */ diff --git a/include/ec_config.h b/include/ec_config.h index 7fb3f39..054bb6f 100644 --- a/include/ec_config.h +++ b/include/ec_config.h @@ -55,11 +55,11 @@ #define EC_CONFIG_UART_RX_TIMEOUT_MS 100 /* FreeRTOS UART read poll timeout */ #define EC_CONFIG_UART_TX_TIMEOUT_MS 1000 /* FreeRTOS UART write timeout */ -/* Skill layer */ +/* Capability Bundle layer */ #define EC_CONFIG_SYSTEM_PROMPT_BUF 2048 /* combined system prompt buffer */ -#define EC_CONFIG_MAX_SKILLS 16 /* max registered skills */ +#define EC_CONFIG_MAX_CAPABILITY_BUNDLES 16 /* max registered capability bundles */ -/* Web browsing skill */ +/* Web browsing capability bundle */ #define EC_CONFIG_BRAVE_API_HOST "api.search.brave.com" #define EC_CONFIG_BRAVE_API_PORT 443 #define EC_CONFIG_BRAVE_API_KEY "BSA-CHANGE-ME" diff --git a/include/ec_hw_datasheet.h b/include/ec_hw_datasheet.h index 69e19f3..786ff0a 100644 --- a/include/ec_hw_datasheet.h +++ b/include/ec_hw_datasheet.h @@ -14,9 +14,9 @@ * 2. Define const arrays of ec_hw_bitfield_t, ec_hw_register_t, and * ec_hw_module_t. * 3. Define EC_HW_MODULES and EC_HW_MODULE_COUNT pointing to your tables. - * 4. Include the header from ec_skill_table.c (or set it via a CMake option). + * 4. Include the header from ec_capability_table.c (or set it via a CMake option). * - * The hw_datasheet skill provides two tools that query these tables: + * The hw_datasheet capability bundle provides two tools that query these tables: * hw_module_list — list all modules (name + description) * hw_register_lookup — look up registers and bit fields in a module */ @@ -59,7 +59,7 @@ typedef struct { /** * These symbols must be defined by the ASIC-specific header. - * If no ASIC header is included, ec_skill_table.c provides empty defaults. + * If no ASIC header is included, ec_capability_table.c provides empty defaults. */ extern const ec_hw_module_t *EC_HW_MODULES; extern const size_t EC_HW_MODULE_COUNT; diff --git a/include/ec_hw_example_asic.h b/include/ec_hw_example_asic.h index 5c5f16f..51e32bf 100644 --- a/include/ec_hw_example_asic.h +++ b/include/ec_hw_example_asic.h @@ -12,7 +12,7 @@ * hw_module_list → lists all modules * hw_register_lookup → returns registers and bit fields for a module * - * Include this header from ec_skill_table.c to activate it. + * Include this header from ec_capability_table.c to activate it. */ #include "ec_hw_datasheet.h" diff --git a/include/ec_tool.h b/include/ec_tool.h index 7e81962..b311ad5 100644 --- a/include/ec_tool.h +++ b/include/ec_tool.h @@ -50,8 +50,8 @@ int ec_tool_dispatch(const ec_model_tool_call_t *call, */ const ec_model_tool_def_t *ec_tool_model_defs(size_t *count); -/* Tool definitions and implementations live in ec_skill_table.c. - * Register them by calling ec_skill_init() at startup. */ +/* Tool definitions and implementations live in ec_capability_table.c. + * Register them by calling ec_capability_init() at startup. */ #ifdef __cplusplus } diff --git a/plan.md b/plan.md index ffb3dfb..cc2da2f 100644 --- a/plan.md +++ b/plan.md @@ -16,10 +16,10 @@ The FreeRTOS backend remains stubbed, pending target hardware bring-up. | JSON builder/parser | `ec_json.c/h` | Done (writer + path-based parser) | | Chat API | `ec_api.c/h` | Done (text + tool_calls responses) | | Tool framework | `ec_tool.c/h` | Done (registry + dispatcher) | -| Skill system | `ec_skill.c/h`, `ec_skill_table.c` | Done (compile-time skill bundles) | -| HW register skill | `ec_skill_table.c` | Done (read/write, POSIX mock array) | -| HW datasheet skill | `ec_skill_table.c`, `ec_hw_datasheet.h` | Done (module list, register lookup) | -| Web browsing skill | `ec_skill_table.c` | Done (web_search via Brave, web_fetch) | +| Capability bundle system | `ec_capability.c/h`, `ec_capability_table.c` | Done (compile-time capability bundles) | +| HW register capability bundle | `ec_capability_table.c` | Done (read/write, POSIX mock array) | +| HW datasheet capability bundle | `ec_capability_table.c`, `ec_hw_datasheet.h` | Done (module list, register lookup) | +| Web browsing capability bundle | `ec_capability_table.c` | Done (web_search via Brave, web_fetch) | | Session layer | `ec_session.c/h` | Done (ring buffer, tool_call support) | | Agent loop | `ec_agent.c/h` | Done (multi-iteration tool dispatch) | | I/O abstraction | `ec_io.c/h` | Done | @@ -84,10 +84,10 @@ server). I/O mode selected via `EC_IO` environment variable on POSIX. --- -### Phase 6 — Skill System ✅ +### Phase 6 — Capability Bundle System ✅ -**Completed.** Compile-time skill bundles in `ec_skill_table.c`. Each skill -registers tools and contributes system prompt context. Two built-in skills: +**Completed.** Compile-time capability bundles in `ec_capability_table.c`. Each capability bundle +registers tools and contributes system prompt context. Two built-in capability bundles: `hw_register_control` and `web_browsing`. --- @@ -107,7 +107,7 @@ verification. Certificate validation set to `MBEDTLS_SSL_VERIFY_REQUIRED`. **Completed.** `web_search` tool calls the Brave Search API (`GET /res/v1/web/search?q=...&count=N`). `web_fetch` tool performs HTTP GET on -arbitrary URLs. Both registered via the `web_browsing` skill with appropriate +arbitrary URLs. Both registered via the `web_browsing` capability bundle with appropriate system context for the LLM. --- @@ -127,7 +127,7 @@ dispatches, and agent loop iterations. All output goes to stderr. query the ASIC register map on demand. Register descriptors are compile-time const tables defined in `ec_hw_datasheet.h` structs. Each ASIC has its own header (e.g., `ec_hw_example_asic.h` with UART0 and GPIO modules). The -`hw_datasheet` skill system context instructs the LLM to always look up +`hw_datasheet` capability bundle system context instructs the LLM to always look up register details before reading/writing — no guessing addresses or bit layouts. --- diff --git a/spec.md b/spec.md index 09658b3..19a7eed 100644 --- a/spec.md +++ b/spec.md @@ -26,7 +26,7 @@ protocol, different execution environment. built in. mbedTLS is the only third-party dependency (for TLS/HTTPS). - **OpenAI-compatible protocol**: Tool calls use the standard OpenAI `tool_calls` JSON format. No custom protocol invented. -- **Extensible via skills**: New capabilities are added as skills — compile-time +- **Extensible via capability bundles**: New capabilities are added as capability bundles — compile-time bundles that contribute tools and LLM system context. - **Extensible I/O**: New input sources can be added without touching the agent core. @@ -64,7 +64,7 @@ protocol, different execution environment. │ 1. Append user message to history │ │ 2. Send full history to LLM │ │ 3. Receive response │ -│ 4. If tool_calls → dispatch to skill/tool layer │ +│ 4. If tool_calls → dispatch to capability bundle/tool layer │ │ append tool results → go to 2 │ │ 5. If text response → send to user via I/O layer │ │ │ @@ -73,7 +73,7 @@ protocol, different execution environment. │ │ ▼ ▼ ┌────────────────────┐ ┌─────────────────────────────┐ -│ Chat API Layer │ │ Skill System (ec_skill) │ +│ Chat API Layer │ │ Capability Bundles (ec_capability) │ │ (ec_api) │ │ ┌────────────────────────┐ │ │ JSON build/parse │ │ │ hw_register_control │ │ │ /v1/chat/complete │ │ │ hw_register_read/ │ │ @@ -214,7 +214,7 @@ int ec_tool_dispatch(const ec_api_tool_call_t *call, char *out_json, size_t out_ const ec_api_tool_def_t *ec_tool_api_defs(size_t *count); ``` -### 6. Capability Bundle System (`ec_skill.h` / `ec_skill.c` / `ec_skill_table.c`) +### 6. Capability Bundle System (`ec_capability.h` / `ec_capability.c` / `ec_capability_table.c`) Capability bundles are compile-time capability groups. Each bundle contributes: - One or more tools (registered via `ec_tool_register`) @@ -372,7 +372,7 @@ socket/TLS stack. | `EC_CONFIG_MAX_TOOL_CALLS` | 4 | Max tool_calls in one LLM response | | `EC_CONFIG_MAX_HISTORY` | 64 | Max messages in conversation history | | `EC_CONFIG_MAX_TOOLS` | 16 | Max registered tools | -| `EC_CONFIG_MAX_SKILLS` | 16 | Max registered capability bundles | +| `EC_CONFIG_MAX_CAPABILITY_BUNDLES` | 16 | Max registered capability bundles | | `EC_CONFIG_MAX_AGENT_ITERS` | 8 | Max agentic loop iterations per turn | --- diff --git a/src/app/ec_posix_main.c b/src/app/ec_posix_main.c index 576dada..b516204 100644 --- a/src/app/ec_posix_main.c +++ b/src/app/ec_posix_main.c @@ -1,7 +1,7 @@ #include "ec_model.h" #include "ec_agent.h" #include "ec_session.h" -#include "ec_skill.h" +#include "ec_capability.h" #include "ec_io.h" #include "ec_config.h" #include "ec_log.h" @@ -18,10 +18,10 @@ static void run_agent_loop(const ec_model_config_t *config, const char *model) /* Initialise debug logging (checks EC_DEBUG env on POSIX) */ ec_log_init(); - /* Initialise skills: registers all tools and builds the system prompt */ - ec_skill_init(); + /* Initialise capability bundles: registers all tools and builds the system prompt */ + ec_capability_init(); - ec_session_init(&s_session, ec_skill_get_system_prompt()); + ec_session_init(&s_session, ec_capability_get_system_prompt()); ec_agent_init(&s_agent, config, model, &s_session); char line[EC_CONFIG_IO_LINE_BUF]; diff --git a/src/core/ec_skill.c b/src/core/ec_capability.c similarity index 95% rename from src/core/ec_skill.c rename to src/core/ec_capability.c index 6e020f2..4a53fa9 100644 --- a/src/core/ec_skill.c +++ b/src/core/ec_capability.c @@ -1,4 +1,4 @@ -#include "ec_skill.h" +#include "ec_capability.h" #include #include @@ -27,7 +27,7 @@ const ec_capability_bundle_t *ec_capability_bundles(size_t *count) return EC_CAPABILITY_TABLE; } -void ec_skill_init(void) +void ec_capability_init(void) { /* Build combined system prompt */ memset(s_system_prompt, 0, sizeof(s_system_prompt)); @@ -69,7 +69,7 @@ void ec_skill_init(void) } } -const char *ec_skill_get_system_prompt(void) +const char *ec_capability_get_system_prompt(void) { return s_system_prompt; } diff --git a/src/core/ec_skill_table.c b/src/core/ec_capability_table.c similarity index 99% rename from src/core/ec_skill_table.c rename to src/core/ec_capability_table.c index 77c6e5f..ea6126e 100644 --- a/src/core/ec_skill_table.c +++ b/src/core/ec_capability_table.c @@ -19,7 +19,7 @@ * ============================================================================ */ -#include "ec_skill.h" +#include "ec_capability.h" #include "ec_hw_access.h" #include "ec_mmio.h" #include "ec_json.h" @@ -34,7 +34,7 @@ /* ============================================================================ * Base system prompt * - * Describes the device personality before any skill contexts are appended. + * Describes the device personality before any capability bundle contexts are appended. * Edit this string to change the overall agent behaviour. * ============================================================================ */ @@ -746,7 +746,7 @@ static const ec_capability_bundle_t s_capability_table[] = { }; -/* Exported symbols referenced by ec_skill.c */ +/* Exported symbols referenced by ec_capability.c */ const ec_capability_bundle_t *EC_CAPABILITY_TABLE = s_capability_table; const size_t EC_CAPABILITY_TABLE_COUNT = sizeof(s_capability_table) / sizeof(s_capability_table[0]); diff --git a/src/core/ec_tool.c b/src/core/ec_tool.c index 87aa5da..0609ea1 100644 --- a/src/core/ec_tool.c +++ b/src/core/ec_tool.c @@ -7,8 +7,8 @@ * Tool registry and dispatcher. * * This file is pure infrastructure — it knows nothing about specific tools. - * All tool definitions and implementations live in ec_skill_table.c and are - * registered via ec_skill_init() at startup. + * All tool definitions and implementations live in ec_capability_table.c and are + * registered via ec_capability_init() at startup. * ========================================================================= */ static const ec_tool_def_t *s_tools[EC_CONFIG_MAX_TOOLS]; diff --git a/src/platform/freertos/ec_freertos_entry.c b/src/platform/freertos/ec_freertos_entry.c index 3b4990e..61772ea 100644 --- a/src/platform/freertos/ec_freertos_entry.c +++ b/src/platform/freertos/ec_freertos_entry.c @@ -1,7 +1,7 @@ #include "ec_model.h" #include "ec_agent.h" #include "ec_session.h" -#include "ec_skill.h" +#include "ec_capability.h" #include "ec_io.h" #include "ec_config.h" #include "ec_log.h" @@ -19,9 +19,9 @@ static ec_agent_t s_agent; static void run_agent_loop(const ec_model_config_t *config, const char *model) { ec_log_init(); - ec_skill_init(); + ec_capability_init(); - ec_session_init(&s_session, ec_skill_get_system_prompt()); + ec_session_init(&s_session, ec_capability_get_system_prompt()); ec_agent_init(&s_agent, config, model, &s_session); char line[EC_CONFIG_IO_LINE_BUF]; diff --git a/tests/test_e2e.c b/tests/test_e2e.c index 1cb6847..4797533 100644 --- a/tests/test_e2e.c +++ b/tests/test_e2e.c @@ -2,7 +2,7 @@ * EmbedClaw end-to-end tests. * * Real stack under test: - * ec_skill_table → ec_skill → ec_agent → ec_session → ec_api → [mock HTTP] + * ec_capability_table → ec_capability → ec_agent → ec_session → ec_api → [mock HTTP] * ec_tool dispatch → hw_register_read/write (POSIX mock registers) * * Only ec_http_request is replaced (mock_http.c). Everything else is real. @@ -19,7 +19,7 @@ #include "mock_http.h" #include "ec_agent.h" #include "ec_session.h" -#include "ec_skill.h" +#include "ec_capability.h" #include "ec_hw_access.h" #include "ec_json.h" #include "ec_config.h" @@ -653,7 +653,7 @@ static int test_hw_register_lookup_unknown(void) * ========================================================================= */ static int test_capability_policy_prompt(void) { - const char *prompt = ec_skill_get_system_prompt(); + const char *prompt = ec_capability_get_system_prompt(); ASSERT(prompt != NULL, "system prompt should be available"); ASSERT_STR(prompt, "Capability policy: privileged local tools.", "prompt should include privileged hardware policy"); @@ -707,8 +707,8 @@ static int test_hw_access_policy_rejects_denied_access(void) int main(void) { - /* Initialise skills once — registers tools into the global registry */ - ec_skill_init(); + /* Initialise capability bundles once — registers tools into the global registry */ + ec_capability_init(); printf("=== EmbedClaw End-to-End Tests ===\n\n"); diff --git a/tests/test_host_sim.c b/tests/test_host_sim.c index 1d05c89..ca41f3d 100644 --- a/tests/test_host_sim.c +++ b/tests/test_host_sim.c @@ -3,7 +3,7 @@ #include "ec_agent.h" #include "ec_mmio.h" #include "ec_session.h" -#include "ec_skill.h" +#include "ec_capability.h" #include #include @@ -50,7 +50,7 @@ static void setup(const ec_model_config_t *cfg) { mock_http_reset(); ec_mmio_reset(); - ec_session_init(&s_session, ec_skill_get_system_prompt()); + ec_session_init(&s_session, ec_capability_get_system_prompt()); ec_agent_init(&s_agent, cfg, "test-model", &s_session); } @@ -129,7 +129,7 @@ static int test_real_provider_path_in_host_sim(void) int main(void) { - ec_skill_init(); + ec_capability_init(); printf("=== EmbedClaw Host Simulation Tests ===\n\n");