Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

AI Assistant

オープン 初心者向け
#183 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
2/5
見積もり時間
1〜3時間
初心者へのやさしさ
83/100
issue の種類
機能追加
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
github, python
領域
release

調査の方向性

Addon Manager の AddonCatalog.schema.json とインデックス内の既存エントリを読み、提案された AIAssistant エントリの形式を確認してください。提供された1つの hunk のエントリをスキーマに照らして検証し、リポジトリとリリースの詳細が issue と一致することを確認してください。提案されたリポジトリ、master ブランチ、最小バージョン FreeCAD 1.0.0、アーカイブ URL とともに addon が掲載されれば完了です。

索引モデルが issue の本文から書いたものです。

説明

+ 💿 𝗔𝗱𝗱𝗼𝗻
🔌 Repository

https://github.com/iplayfast/FreeCAD-AI-Assistant

📑 Notes

AI Assistant gives FreeCAD three ways to be driven by a model — a dock panel, an
AI() function in the Python console, and an MCP/XML-RPC server for external
agent CLIs — all three sharing one registry of 51 tools, so a tool added once
appears in all of them. It builds parametric documents (PartDesign bodies,
constrained sketches, dimensions driven by an App::VarSet), not one-off shapes.

Against the Qualities list:

  • Age / maintenance. Repository created 2026-06-16 (129 days), actively
    developed, single maintainer, issues and advisories watched.
  • Licence. LGPL-2.1-or-later, consistent in all three places: the
    <license file="LICENSE"> element in package.xml, the LICENSE text itself,
    and an SPDX-License-Identifier header on all 33 source files.
  • Manifest. package.xml declares <content><workbench> with classname
    AIAssistantWB, subdirectory freecad/AIAssistant, a branch attribute on
    <url type="repository">, and <freecadmin>1.0</freecadmin>. It parses
    through the Addon Manager's own MetadataReader, and the declared icon
    resolves.
  • Version floor. 1.0 rather than 0.21: the parametric deliverable rests on
    App::VarSet, which landed after 0.21 shipped. Declared in both the manifest
    and the index entry.
  • Dependencies. None. No third-party Python packages, so nothing is needed
    from the allow list — the provider layer is stdlib urllib, and the only
    non-stdlib imports are FreeCAD's own modules and its PySide wrapper.
  • Layout. Modern namespaced freecad/AIAssistant/.
  • Startup cost. init_gui.py imports one module at load, to register the
    AI() console globals: 0.154 s and 11 pure-Python submodules, no network and
    no document work. Everything heavier — the Qt panel, the BIM wizard, the RPC
    server — is imported inside Activated()/Initialize(). The RPC server is
    additionally behind the off-by-default setting below, so a user who never
    opens the workbench pays for nothing but that import.
  • Completeness. Not alpha. 13 modules carry demo() self-checks runnable
    headless via freecadcmd run_checks.py, all passing, plus a suite that drives
    a real model against four build tasks and passes only if the finished document
    contains solids.

External connections, since this addon is unusual in that respect and I would
rather raise it than have review find it:

  • The panel talks to whichever model service the user configures. Nothing is
    preconfigured to a remote endpoint — Ollama on loopback is the default — and
    no request is made until the user sends a message. API keys live in the
    addon's settings file, written 0600, and fall back to the usual environment
    variables.
  • The XML-RPC/MCP server binds 127.0.0.1 only and is off by default
    (auto_start_rpc defaults to False); it starts when the user turns it on.
  • execute_code runs unsandboxed Python inside FreeCAD, which is inherent to
    what the tool is for. For agent CLIs launched from the panel, the default
    permission setting keeps execute_code behind a confirmation prompt. This is
    stated in the README's Security section rather than buried.
  • No telemetry, no analytics, no data shared with any third party beyond the
    model service the user chose.

Proposed index entry, if it helps — it validates against
AddonCatalog.schema.json and I have the one-hunk diff ready:

  "AIAssistant": [
    {
      "repository": "https://github.com/iplayfast/FreeCAD-AI-Assistant",
      "git_ref": "master",
      "branch_display_name": "master",
      "freecad_min": "1.0.0",
      "zip_url": "https://github.com/iplayfast/FreeCAD-AI-Assistant/archive/refs/heads/master.zip",
      "curated": false
    }
  ],

v0.1.0 is tagged and released. Happy to cut a fresh tag, move publication to a
separate release branch, or change the addon ID if AIAssistant collides with
anything you would rather keep free.

主要言語
言語のデータがありません
スター
21
フォーク
15
平均マージ
1日 21時間
マージ済み PR(30日)
13

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

FreeCAD/Addons のほかの issue

FreeCAD/Addons の issue をすべて見る

似ている issue

Release の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。