VS Code and terminal

VS Code and terminal

Work on the same projects, files, runs, and plan as the browser, from VS Code or a terminal.

Overview#

  • A terminal client and a VS Code extension work with the same projects, files, workflow runs, and plan as the browser.
  • Install the terminal client from npm (tapeo-cli) and the extension from the VS Code Marketplace (“Tapeo”). Both are early releases (version 0.x).
  • The 2D/3D layout views, goal-plan review, and Architect image and PDF attachments stay in the web workspace.

What you can do#

Sign in

$ tapeo login
  • Uses tapeo.net; name another server to use your own. In VS Code: Tapeo: Connect to Server.
  • Your browser opens a page with a short code; check that it matches and approve the device.
  • Each device gets its own token, listed on the Account page, where you can revoke it. You can also create a token on the Account page and paste it.

Edit and push

Pull a project into a folder, edit with your own tools, see what changed, and save it (or Push All Changes in VS Code):

$ tapeo status$ tapeo push --all

tapeo rm and tapeo mv delete and rename files on the server.

Run and see results

$ tapeo run --watch
  • Start a full run or one stage, and follow it: it shows each stage, then the stage results, tool runs, and goals.
  • tapeo show, tapeo logs, tapeo goals, and tapeo cancel work on any run.
  • In VS Code, the status bar follows the run and tells you when it ends.

Use tapeo run --resume --watch for a scoped rerun that reuses only stages whose inputs, settings, tool, dependencies, and outputs still match. Inspect cross-target evidence with tapeo readiness, constraints, cdc, portability, equivalence, and power, or the matching VS Code commands. tapeo check design, check equivalence asic, check power, check atpg, check soc, check package, and check mutation (test quality: plant bugs and count how many the testbench catches; --count and --testbench) refresh an analysis without a full build; tapeo soc shows the SoC's address map and register checks, and tapeo package the package pin map.

New design with the Architect

$ tapeo new "a sensor that warns when a tank is full"
  • Or Tapeo: New Design with the Architect in VS Code.
  • Choose Quick prototype or Guided design (--mode quick|guided), answer its questions (or choose “Not sure”), check the requirements readiness and the assumptions, pick a design option, check the build plan, and build. A proposal without a testable success criterion is not built. The project is created, the first build runs, and the generated files are pulled into your folder.
  • --from-files starts from the RTL already in the folder.

the Architect and change review

$ tapeo ask "why does the counter not wrap?"
  • Or ask in the Tapeo Architect panel in VS Code. The answer streams in and joins the same conversation as the browser.
  • Proposed changes are shown as diffs (tapeo proposals, or Review in VS Code). Apply them to your local files with tapeo apply or Apply, then push.
  • The Architect reads the saved server copy, so push your edits before asking about them.
  • When a question needs a datasheet or a standard, the Architect searches the web and lists the pages it used under its answer.

Add your own datasheets and specifications (or Tapeo: Add Reference Document); the Architect reads the passages that match each question and cites the page:

$ tapeo docs add bme280.pdf

Checks on every push

Keep the design in GitHub and check every change. See Checks on every push.

Tool errors in the editor

  • When a run ends, VS Code shows tool errors on the lines they name in the Problems panel; tapeo problems prints them as file:line.
  • Warnings are included when a tool step failed. Messages without a project file and line stay in the tool log.

Tool outputs

Reports, netlists, and layouts download read-only; large ones (a layout) with tapeo download. Outputs are never pushed back.

$ tapeo pull --outputs

Sync and shared rules#

Safe synchronization

Every push and delete names the version it was based on. If the server copy changed meanwhile, that file is refused, your local edit is kept, and the server copy is saved in .tapeo/conflicts/ for comparison. Pull never overwrites a local edit.

Same rules as the browser

A run from a client uses your saved files (it never regenerates HDL), the same queue, and the same plan: a full run is one build. A run can be cancelled from either side; it stops before its next stage, and finished stages keep their results.

Available now and next#

Available now

Sign in through the browser, design with the Architect, edit, push, run, follow, read results, see tool errors in the editor, and ask the Architect and apply its changes, from a terminal or VS Code.

Next

The layout views and the Goals editor in VS Code, and the extension for Cursor and other editors that use Open VSX.

From blocks to systems

Longer term, reusable ASIC blocks will compose into larger SoCs and could connect to a separate PCB design and integration workflow.