tuyaos-hardware-vibe-coding
Hardware-aware code generation for TuyaOS (tuyaos-legacy) apps.
Skill by tuya
Chalk Labs
Need help deploying tuyaos-hardware-vibe-coding?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/tuya-tuyaos-hardware-vibe-coding
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Nov 1, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/tuyaos-hardware-vibe-coding
What's inside
- Skill name
tuyaos-hardware-vibe-coding- Description
- Hardware-aware code generation for TuyaOS (tuyaos-legacy) apps. Confirms pins/instance with the user, writes tkl_*/tal_* driver code under apps/<app>/src, and registers sources/headers in local.mk when needed. Canonical demos: software/TuyaOS/apps/tuyaos_demo_examples/src/examples/. GPIO、PWM、I2C、SPI、ADC、定时器、看门狗、麦克风、喇叭、DVP 摄像头、WiFi、BLE、 蓝牙、联网、STA、AP、扫网、广播、扫描、串口、外设初始化、硬件驱动、点灯、按键、 录音、播放、引脚、片上外设、TuyaOS 硬件。
- License
- Apache-2.0
- Metadata
- owner: tuyaos-team · version: 1.0.1 · deprecated: false · min-cli-version: none
- Instructions
- 109 lines in SKILL.md · view on GitHub
Agent Skills spec issues
- compatibility: must be text of at most 500 characters
Files (15)
- SKILL.md
- SKILL.md · peripheral-drivers/
- SKILL.md · peripheral-drivers/adc/
- SKILL.md · peripheral-drivers/ble/
- SKILL.md · peripheral-drivers/dvp/
- SKILL.md · peripheral-drivers/gpio/
- SKILL.md · peripheral-drivers/i2c/
- SKILL.md · peripheral-drivers/mic/
- SKILL.md · peripheral-drivers/pwm/
- SKILL.md · peripheral-drivers/speaker/
- SKILL.md · peripheral-drivers/spi/
- SKILL.md · peripheral-drivers/sw-i2c/
- SKILL.md · peripheral-drivers/timer/
- SKILL.md · peripheral-drivers/watchdog/
- SKILL.md · peripheral-drivers/wifi/
SKILL.md (first lines)
# TuyaOS Hardware Vibe Coding
**TuyaOS-only.** Separate from TuyaOpen `tuyaopen-hardware` (TDD/TDL /
`board-context.md`). Do **not** load or copy TuyaOpen peripheral skills here.
## Architecture (TuyaOS)
App code calls **TKL / TAL** drivers directly:
```text
App (apps/<app>/src/*.c)
→ tkl_* (GPIO / I2C / SPI / PWM / ADC / timer / audio / video …)
→ tal_* (log / thread / system / watchdog …)
```
There is **no** `board_register_hardware()`, **no** `tdl_*` device layer, and
**no** `.tuyaopen/board-context.md` on TuyaOS projects.
## Read these first
1. **Project root** — `tuya.json` + `software/TuyaOS/`.
2. **Active app** — `.tuyaos/status.json` → `activeApp`, or user-named app under
`software/TuyaOS/apps/<app>/`.
3. **App sources** — `apps/<app>/src/`, headers in `include/` or beside sources.
4. **`apps/<app>/local.mk`** — how sources/headers are registered (see `tuyaos-build`).
5. **Reference demos** (always prefer reading the real file over inventing APIs):
```text
software/TuyaOS/apps/tuyaos_demo_examples/src/examples/
driver_gpio/ driver_i2c/ driver_pwm/ driver_adc/
driver_spi/ driver_timer/ driver_mic/ driver_speaker/
driver_dvp/ os_watchdog/ os_wifi/ os_ble/
service_ble_remote/ service_ffc_master/ service_ffc_slaver/
```
If the demo app is not in the current tree, still use the same API names from
the sub-skills below; pin numbers must come from the **user / board schematic**.
## Rules (must follow)
1. **Confirm pins / instance before code.** Ask which GPIO / PWM id / I2C port /
SPI id / ADC channel when the user did not specify. Do not invent board pins.
2. **Match existing app style.** If the app uses `STATIC`/`VOID`/`TAL_PR_*`, keep
that; if it uses POSIX C, keep that. Prefer the style already in `tuya_app_main.c`.
3. **Wire new files in `local.mk`.** New `.c` under `apps/<app>/` must appear in
`LOCAL_SRC_FILES`; new header dirs in `LOCAL_TUYA_SDK_INC` or
`LOCAL_TUYA_SDK_CFLAGS += -I...`. Paths outside the app (e.g. `vendor/`) use
`$(LOCAL_PATH)/../../vendor/...` — see **`tuyaos-build`**.
4. **Never use TuyaOpen-only APIs** here: `tdl_*`, `board_register_hardware()`,
`board_com_api.h`, `app_default.config` TuyaOpen Kconfig, `.tuyaopen/*`.
5. **Build with `tuyaos-build`** (`build_app.sh`), not `tos.py`.
6. **Serial / 串口 is ambiguous** → ask: log/`TAL_PR_*` vs dedicated UART
(`tal_uart` / `tkl_uart` if present on the platform). Do not assume.
## Step flow
1. Confirm this is a **TuyaOS** tree (`software/TuyaOS/build_app.sh`).
2. Resolve `appName` + open `local.mk` + main entry (`tuya_app_main.c` or similar).
3. Confirm peripheral type + pins/ids with the user.
4. Open the matching sub-skill under `peripheral-drivers/`.
5. Optionally open the matching `tuyaos_demo_examples` source and adapt it.
6. Write code under `apps/<app>/src/…`; update `local.mk` if new files/dirs.
7. Build via `tuyaos-build` skill commands.
## Route table
| User intent | Sub-skill | Demo path under `…/examples/` |
|-------------|-----------|-------------------------------|
| GPIO in/out/IRQ, 拉高拉低 | `peripheral-drivers/gpio/SKILL.md` | `driver_gpio/` |
| Software bit-bang I2C | `peripheral-drivers/sw-i2c/SKILL.md` | `driver_gpio/` (`example_driver_sw_i2c.c`) |
| Hardware I2C master | `peripheral-drivers/i2c/SKILL.md` | `driver_i2c/` |
| PWM dimming / tone | `peripheral-drivers/pwm/SKILL.md` | `driver_pwm/` |
| ADC / 电压采样 | `peripheral-drivers/adc/SKILL.md` | `driver_adc/` |
| SPI master | `peripheral-drivers/spi/SKILL.md` | `driver_spi/` |
| Hardware timer | `peripheral-drivers/timer/SKILL.md` | `driver_timer/` |
| Watchdog / 喂狗 | `peripheral-drivers/watchdog/SKILL.md` | `os_watchdog/` |
| Mic / 录音 | `peripheral-drivers/mic/SKILL.md` | `driver_mic/` |
| Speaker / 播放 | `peripheral-drivers/speaker/SKILL.md` | `driver_speaker/` |
| DVP camera / 采集编码 | `peripheral-drivers/dvp/SKILL.md` | `driver_dvp/` |
| Wi-Fi STA/AP/scan/LP / 联网 | `peripheral-drivers/wifi/SKILL.md` | `os_wifi/` (+ `service_ffc_*` for FFC remote) |
| BLE peripheral/central / 蓝牙 | `peripheral-drivers/ble/SKILL.md` | `os_ble/` (+ `service_ble_remote/` for remotes) |
Not listed (KV/OTA/HTTP/thread/queue/…) → read the matching
`tuyaos_demo_examples/src/examples/<name>/` demo; do not invent APIs.
## Code organisation (TuyaOS app)
```text
apps/<app>/
local.mk
include/ # optional public headers
src/
tuya_app_main.c # entry — keep thin
app_<feature>.c/.h # new feature modules
```
- Prefer a new `app_<feature>.c` + header; call init from main.
- If `local.mk` already does `find $(LOCAL_PATH)/src …`, new files under `src/`
may auto-pick up; otherwise `LOCAL_SRC_FILES += …` explicitly.
- Vendor / out-of-app sources: **must** edit `local.mk` (see `tuyaos-build`).
## Related skills
- `tuyaos-build` — build/clean + `local.mk` path wiring
- `tuyaopen-flash` — flash after a successful build
- `iot-product-workflow` — product/DP orchestration (not a driver skill)
_Maintained in tuyaopen-ide-manifests. TuyaOS-only (`sdks: [tuyaos]`)._From tuya/tuyaopen-ide-manifests, Apache-2.0.
More from tuya/tuyaopen-ide-manifests
- 0.603score
tuyaopen-miniapp-performance-ux-guard
tuya
Reviews and improves Tuya 小程序/miniapp/Ray quality in one package: build guardrails, launch/first-screen performance, release review gates, and…
SkillAFreshness: A★ 2Claude Code +9 - 0.603score
tuyaopen-start
tuya
Foundation conventions shared by every other TuyaOpen skill: how to find and identify the `tuyaopen-cli` CLI, the `--json` envelope contract, the exit-code…
SkillAFreshness: A★ 2Claude Code +9 - 0.603score
tuyaopen-embedded-flash
tuya
Flash firmware, monitor serial output, and pick the right serial port for a TuyaOpen device via the `tuyaopen-cli` CLI (`firmware flash`, `firmware monitor`…
SkillAFreshness: A★ 2Claude Code +9 - 0.603score
tuyaopen-embedded-cli-debug
tuya
Debug a running TuyaOpen device: register firmware features as device CLI commands and drive them over the serial shell (`tal_cli`), capture serial logs in…
SkillAFreshness: A★ 2Claude Code +9 - 0.603score
tuyaopen-embedded-project
tuya
Read and mutate the `.tuyaopen/` project descriptor via the `tuyaopen-cli` CLI (`project info/create/set-platform/set-board/set-status/set-intent/…
SkillAFreshness: A★ 2Claude Code +9 - 0.603score
tuyaopen-miniapp-charts-library
tuya
帮助 Agent 在 Ray 小程序中正确集成 `@ray/charts-library`,包括场景卡片(EleChartCard、TempAndHumChartCard、IlluminanceChartCard)、DataSourceProvider…
SkillAFreshness: A★ 2Claude Code +9 - 0.600score
miniapp-development-workflow
tuya
Shared MiniApp 小程序 and 面板 development and release workflow for TuyaOpen and TuyaOS, including Ray and 需求 hand-offs, using IDE Agent Tools and Capability Broker.
SkillAFreshness: A★ 2Claude Code +9 - 0.599score
tuyaopen-embedded-code-check
tuya
Check C/C++ code formatting, detect Chinese characters, and validate file headers using clang-format and check_format.py.
SkillAFreshness: A★ 2Claude Code +9 - 0.599score
tuyaopen-embedded-add-board
tuya
Add new board (BSP) support to TuyaOpen, including board directory structure, Kconfig, drivers, and config files.
SkillAFreshness: A★ 2Claude Code +9 - 0.599score
tuyaopen-embedded-build
tuya
Build and compile TuyaOpen projects via the `tuyaopen-cli firmware build/clean` CLI (IDE-scaffolded projects) or `tos.py build`/`tos.py clean` (raw SDK…
SkillAFreshness: A★ 2Claude Code +9 - 0.599score
tuyaopen-embedded-device-auth
tuya
Configure device authorization credentials (UUID, AuthKey, PID) and network provisioning for TuyaOpen devices via `tuyaopen-cli license list/add/import/…
SkillAFreshness: A★ 2Claude Code +9 - 0.599score
tuyaopen-embedded-hardware
tuya
Hardware-aware code generation for TuyaOpen embedded projects.
SkillAFreshness: A★ 2Claude Code +9
Signals
- Stars
- 2
- Forks
- 7
- Open issues
- 0
- Last commit (this folder)
- Sep 16, 2026 (1 month ago)
- Last release
- Oct 20, 2026 (12 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 1.0.1
- License
- Apache-2.0
- Repository
- github.com/tuya/tuyaopen-ide-manifests
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from tuya
- 0.603score
tuyaopen-embedded-flash
tuya
Flash firmware, monitor serial output, and pick the right serial port for a TuyaOpen device via the `tuyaopen-cli` CLI (`firmware flash`, `firmware monitor`…
SkillAFreshness: A★ 2Claude Code +9 - 0.603score
tuyaopen-miniapp-charts-library
tuya
帮助 Agent 在 Ray 小程序中正确集成 `@ray/charts-library`,包括场景卡片(EleChartCard、TempAndHumChartCard、IlluminanceChartCard)、DataSourceProvider…
SkillAFreshness: A★ 2Claude Code +9 - 0.603score
tuyaopen-start
tuya
Foundation conventions shared by every other TuyaOpen skill: how to find and identify the `tuyaopen-cli` CLI, the `--json` envelope contract, the exit-code…
SkillAFreshness: A★ 2Claude Code +9 - 0.603score
tuyaopen-embedded-cli-debug
tuya
Debug a running TuyaOpen device: register firmware features as device CLI commands and drive them over the serial shell (`tal_cli`), capture serial logs in…
SkillAFreshness: A★ 2Claude Code +9 - 0.603score
tuyaopen-embedded-project
tuya
Read and mutate the `.tuyaopen/` project descriptor via the `tuyaopen-cli` CLI (`project info/create/set-platform/set-board/set-status/set-intent/…
SkillAFreshness: A★ 2Claude Code +9 - 0.603score
tuyaopen-miniapp-performance-ux-guard
tuya
Reviews and improves Tuya 小程序/miniapp/Ray quality in one package: build guardrails, launch/first-screen performance, release review gates, and…
SkillAFreshness: A★ 2Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get tuyaos-hardware-vibe-coding running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
tuyaos-hardware-vibe-coding skill. Agent Mart. https://agentmart.dev/skills/tuya-tuyaos-hardware-vibe-coding (last updated 2026-10-24)