firmwareloop 0.2.1__tar.gz → 0.2.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/PKG-INFO +3 -3
  2. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/README.md +2 -2
  3. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/firmwareloop.egg-info/PKG-INFO +3 -3
  4. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/pyproject.toml +1 -1
  5. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/__init__.py +1 -1
  6. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/fw_mcp_server.py +7 -7
  7. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/ndtdbg_bridge.ps1 +3 -1
  8. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/setup-agent-mcp.ps1 +2 -2
  9. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/LICENSE +0 -0
  10. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/firmwareloop.egg-info/SOURCES.txt +0 -0
  11. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/firmwareloop.egg-info/dependency_links.txt +0 -0
  12. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/firmwareloop.egg-info/entry_points.txt +0 -0
  13. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/firmwareloop.egg-info/requires.txt +0 -0
  14. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/firmwareloop.egg-info/top_level.txt +0 -0
  15. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/setup.cfg +0 -0
  16. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/acceptance-scenario.ps1 +0 -0
  17. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/build.ps1 +0 -0
  18. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/can.ps1 +0 -0
  19. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/check-qoder-mcp.ps1 +0 -0
  20. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/common/build-backends.psm1 +0 -0
  21. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/common/fw.psm1 +0 -0
  22. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/common/uart_probe.py +0 -0
  23. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/doctor.ps1 +0 -0
  24. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/flash.ps1 +0 -0
  25. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/instrument_cli.py +0 -0
  26. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/lib/__init__.py +0 -0
  27. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/lib/instruments.py +0 -0
  28. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/lib/ndtdbg.py +0 -0
  29. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/logic_capture.ps1 +0 -0
  30. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/logic_decode.ps1 +0 -0
  31. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/ndtdbg_cli.py +0 -0
  32. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/reset.ps1 +0 -0
  33. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/sigrok_csv_to_fwloop.py +0 -0
  34. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/test-backends.ps1 +0 -0
  35. {firmwareloop-0.2.1 → firmwareloop-0.2.2}/tools/test.ps1 +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: firmwareloop
3
- Version: 0.2.1
3
+ Version: 0.2.2
4
4
  Summary: AI Agent Firmware Development and Lab Automation Platform (Dual-Tier MCP Server)
5
5
  Author-email: WeilinZhang <19523330249@163.com>
6
6
  License: MIT
@@ -381,7 +381,7 @@ claude mcp remove --scope user agentic-hil
381
381
  ├── demo-firmware/ 示例固件(CMake;宿主编译模拟 MCU,闭环验证载体)
382
382
  ├── demo-make/ 示例固件(Make;构建测试载体)
383
383
  ├── docs/ DEPENDENCY_MATRIX / REUSE_PLAN / V0.0.2_GAP_VERIFICATION
384
- ├── pyproject.toml 标准 Python 包配置与 CLI 入口声明 (v0.2.1)
384
+ ├── pyproject.toml 标准 Python 包配置与 CLI 入口声明 (v0.2.2)
385
385
  ├── .mcp.example.json 双层 MCP 配置模板(firmwareloop + agentic-hil)
386
386
  ├── AGENTS.md 通用智能体规范(Antigravity / Qoder / Cursor 等)
387
387
  ├── CLAUDE.md Claude Code CLI 指南
@@ -391,7 +391,7 @@ claude mcp remove --scope user agentic-hil
391
391
 
392
392
  ---
393
393
 
394
- ## 能力验证状态(v0.2.1
394
+ ## 能力验证状态(v0.2.2
395
395
 
396
396
  > 状态定义:`Implemented`(已实现)/ `Simulator Validated`(模拟验证)/
397
397
  > `Real Hardware Validated`(真机验证)/ `Experimental` / `Not Implemented`
@@ -353,7 +353,7 @@ claude mcp remove --scope user agentic-hil
353
353
  ├── demo-firmware/ 示例固件(CMake;宿主编译模拟 MCU,闭环验证载体)
354
354
  ├── demo-make/ 示例固件(Make;构建测试载体)
355
355
  ├── docs/ DEPENDENCY_MATRIX / REUSE_PLAN / V0.0.2_GAP_VERIFICATION
356
- ├── pyproject.toml 标准 Python 包配置与 CLI 入口声明 (v0.2.1)
356
+ ├── pyproject.toml 标准 Python 包配置与 CLI 入口声明 (v0.2.2)
357
357
  ├── .mcp.example.json 双层 MCP 配置模板(firmwareloop + agentic-hil)
358
358
  ├── AGENTS.md 通用智能体规范(Antigravity / Qoder / Cursor 等)
359
359
  ├── CLAUDE.md Claude Code CLI 指南
@@ -363,7 +363,7 @@ claude mcp remove --scope user agentic-hil
363
363
 
364
364
  ---
365
365
 
366
- ## 能力验证状态(v0.2.1
366
+ ## 能力验证状态(v0.2.2
367
367
 
368
368
  > 状态定义:`Implemented`(已实现)/ `Simulator Validated`(模拟验证)/
369
369
  > `Real Hardware Validated`(真机验证)/ `Experimental` / `Not Implemented`
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: firmwareloop
3
- Version: 0.2.1
3
+ Version: 0.2.2
4
4
  Summary: AI Agent Firmware Development and Lab Automation Platform (Dual-Tier MCP Server)
5
5
  Author-email: WeilinZhang <19523330249@163.com>
6
6
  License: MIT
@@ -381,7 +381,7 @@ claude mcp remove --scope user agentic-hil
381
381
  ├── demo-firmware/ 示例固件(CMake;宿主编译模拟 MCU,闭环验证载体)
382
382
  ├── demo-make/ 示例固件(Make;构建测试载体)
383
383
  ├── docs/ DEPENDENCY_MATRIX / REUSE_PLAN / V0.0.2_GAP_VERIFICATION
384
- ├── pyproject.toml 标准 Python 包配置与 CLI 入口声明 (v0.2.1)
384
+ ├── pyproject.toml 标准 Python 包配置与 CLI 入口声明 (v0.2.2)
385
385
  ├── .mcp.example.json 双层 MCP 配置模板(firmwareloop + agentic-hil)
386
386
  ├── AGENTS.md 通用智能体规范(Antigravity / Qoder / Cursor 等)
387
387
  ├── CLAUDE.md Claude Code CLI 指南
@@ -391,7 +391,7 @@ claude mcp remove --scope user agentic-hil
391
391
 
392
392
  ---
393
393
 
394
- ## 能力验证状态(v0.2.1
394
+ ## 能力验证状态(v0.2.2
395
395
 
396
396
  > 状态定义:`Implemented`(已实现)/ `Simulator Validated`(模拟验证)/
397
397
  > `Real Hardware Validated`(真机验证)/ `Experimental` / `Not Implemented`
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "firmwareloop"
7
- version = "0.2.1"
7
+ version = "0.2.2"
8
8
  description = "AI Agent Firmware Development and Lab Automation Platform (Dual-Tier MCP Server)"
9
9
  readme = "README.md"
10
10
  authors = [
@@ -2,4 +2,4 @@
2
2
  FirmwareLoop - AI Agent Firmware Development and Lab Automation Platform.
3
3
  """
4
4
 
5
- __version__ = "0.2.1"
5
+ __version__ = "0.2.2"
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env python3
2
2
  """
3
- fw_mcp_server.py - FirmwareLoop High-Level Workflow & Device MCP Server (v0.2.1).
3
+ fw_mcp_server.py - FirmwareLoop High-Level Workflow & Device MCP Server (v0.2.2).
4
4
 
5
5
  Exposes high-level firmware engineering and hardware management tools to AI Coding
6
6
  Agents (Antigravity CLI, Claude Code CLI, Qoder IDE, CodeBuddy IDE, Cursor) via the Model Context
@@ -1619,7 +1619,7 @@ def process_request(req: Dict[str, Any]) -> Optional[Dict[str, Any]]:
1619
1619
  },
1620
1620
  "serverInfo": {
1621
1621
  "name": "firmwareloop",
1622
- "version": "0.2.1"
1622
+ "version": "0.2.2"
1623
1623
  }
1624
1624
  }
1625
1625
  }
@@ -1754,7 +1754,7 @@ def _settle_stashed_entrypoints(stashed) -> None:
1754
1754
  def handle_cli_update() -> int:
1755
1755
  """Handle `firmwareloop update` command."""
1756
1756
  print("============================================================")
1757
- print(" FirmwareLoop Auto-Updater (v0.2.1)")
1757
+ print(" FirmwareLoop Auto-Updater (v0.2.2)")
1758
1758
  print("============================================================")
1759
1759
 
1760
1760
  is_git_repo = os.path.exists(os.path.join(REPO_ROOT, ".git"))
@@ -2029,7 +2029,7 @@ def set_ndtdbg_dlldir(dll_path: str) -> str:
2029
2029
  def handle_cli_setup() -> int:
2030
2030
  """Handle `firmwareloop setup` command: simultaneously configure Antigravity CLI, Claude Code CLI, Qoder IDE, and CodeBuddy IDE."""
2031
2031
  print("============================================================")
2032
- print(" FirmwareLoop Multi-Agent Global Setup Helper (v0.2.1)")
2032
+ print(" FirmwareLoop Multi-Agent Global Setup Helper (v0.2.2)")
2033
2033
  print("============================================================")
2034
2034
  print("")
2035
2035
 
@@ -2154,7 +2154,7 @@ def handle_cli_setup() -> int:
2154
2154
  def handle_cli_init() -> int:
2155
2155
  """Handle `firmwareloop init` command."""
2156
2156
  print("============================================================")
2157
- print(" FirmwareLoop Multi-Agent Project Initializer (v0.2.1)")
2157
+ print(" FirmwareLoop Multi-Agent Project Initializer (v0.2.2)")
2158
2158
  print("============================================================")
2159
2159
  cwd = os.getcwd()
2160
2160
  print(f"[*] Initializing multi-agent guidelines & bench config in:\n {cwd}\n")
@@ -2175,7 +2175,7 @@ def handle_cli_init() -> int:
2175
2175
 
2176
2176
 
2177
2177
  def print_cli_help() -> None:
2178
- print("""FirmwareLoop (fwloop) — AI Agent Firmware Engineering & Lab Automation Platform (v0.2.1)
2178
+ print("""FirmwareLoop (fwloop) — AI Agent Firmware Engineering & Lab Automation Platform (v0.2.2)
2179
2179
 
2180
2180
  Usage:
2181
2181
  fwloop [command] (or: firmwareloop [command])
@@ -2215,7 +2215,7 @@ def main() -> None:
2215
2215
  sys.exit(2)
2216
2216
  sys.exit(handle_cli_ndtdebugtool(args[1]))
2217
2217
  elif cmd in ["version", "-v", "--version"]:
2218
- print("FirmwareLoop v0.2.1")
2218
+ print("FirmwareLoop v0.2.2")
2219
2219
  sys.exit(0)
2220
2220
  elif cmd in ["help", "-h", "--help"]:
2221
2221
  print_cli_help()
@@ -534,7 +534,9 @@ try {
534
534
  if ($tag -eq "IO_FAIL") { $hasIoFail = $true }
535
535
  elseif ($tag -eq "FF_GAP") { $hasGap = $true }
536
536
  $tRel = [math]::Round($sw.Elapsed.TotalMilliseconds, 1)
537
- [Console]::WriteLine("#F`t{0}`t{1}`t0x{2:X2}`t{3}`t{4}" -f $frameNo, $tRel, $reg, $hexOut, $tag)
537
+ # 方法调用参数列表里逗号是参数分隔符, 必须括号把整个 -f 表达式包成单参数,
538
+ # 否则 -f 只拿到 1 个参数, {1} 起索引越界 (FormatException)
539
+ [Console]::WriteLine(("#F`t{0}`t{1}`t0x{2:X2}`t{3}`t{4}" -f $frameNo, $tRel, $reg, $hexOut, $tag))
538
540
  [Console]::Out.Flush()
539
541
  }
540
542
  if ($hasIoFail) { $framesIoFail++; $consecIoFail++ }
@@ -1,6 +1,6 @@
1
1
  <#
2
2
  .SYNOPSIS
3
- Dual-Tier MCP setup and registration helper (v0.2.1).
3
+ Dual-Tier MCP setup and registration helper (v0.2.2).
4
4
  Inspects installed AI coding agents (Qoder, Claude Code, Antigravity, Cursor)
5
5
  and configures global MCP / skills or prints exact registration commands.
6
6
 
@@ -242,7 +242,7 @@ if ($Json) {
242
242
  Write-FwJson ([pscustomobject]$report)
243
243
  } else {
244
244
  Write-Host "============================================================" -ForegroundColor Cyan
245
- Write-Host " FirmwareLoop Dual-Tier MCP & Agent Setup Helper (v0.2.1)" -ForegroundColor Green
245
+ Write-Host " FirmwareLoop Dual-Tier MCP & Agent Setup Helper (v0.2.2)" -ForegroundColor Green
246
246
  Write-Host "============================================================" -ForegroundColor Cyan
247
247
  Write-Host ""
248
248
  Write-Host "[1] Google Antigravity / Gemini CLI:" -ForegroundColor Yellow
File without changes
File without changes
File without changes