Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ここ半年くらいでAIに作らせたR用ツール
Search
eitsupi
July 25, 2026
Programming
140
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ここ半年くらいでAIに作らせたR用ツール
eitsupi
July 25, 2026
Other Decks in Programming
See All in Programming
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
150
Welcome to the "Parametricity" 🏙️ − Generic だけど Specific な世界 −
guvalif
PRO
1
180
任せる範囲はこう広がった / How the Scope of AI Delegation Has Expanded
nrslib
1
270
Terraform標準の組織で AWS CDKをどう使うか
mu7889yoon
1
350
AI時代のPHPer生存戦略 ~「言語、もうなんでもよくない?」に本気で向き合う~
vivion
0
150
エンジニアにデザインハーネスを 〜デザインプロセスを規定するためのハーネス〜 / Design harness from an engineer's perspective
rkaga
2
1.6k
PHPだって関数型したい 〜できること、できないこと〜 / fp-in-php
jsoizo
1
240
Lean は証明の正しさを確認するためだけのツールって思ってませんか?
inoueasei
1
110
継続モナドとリアクティブプログラミング
yukikurage
3
630
The Bowling Game- From Imperative to Functional Programming - Part 1
philipschwarz
PRO
0
340
どこまでゆるくて許されるのか
tk3fftk
0
520
数百円から始めるRuby電子工作
tarosay
0
100
Featured
See All Featured
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.1k
Ethics towards AI in product and experience design
skipperchong
2
330
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
ラッコキーワード サービス紹介資料
rakko
1
4M
Information Architects: The Missing Link in Design Systems
soysaucechin
0
1k
HDC tutorial
michielstock
2
750
A Soul's Torment
seathinner
6
3.1k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
220
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
320
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
390
Making Projects Easy
brettharned
120
6.7k
Transcript
ここ半年くらいで AI に作らせた R 用ツール arf console, rd2qmd, jgd, …
@eitsupi Tokyo.R 121 — 2026-07-25
自己紹介 Tokyo.R 121 @eitsupi 本業:手料理サブスク Tsuklio のデータ周り 副業:Columnar 社で Apache
Arrow ADBC 周りの開発 Excel が嫌になり R を使い始めて 7 年 Rocker プロジェクト(Shell、R、Docker) Polars R パッケージ(R、Rust) 最近は arf の人、後述 2
最近やってたこと Tokyo.R 121 2025 r-polars の開発 Japan.R 2025 で発表 エージェンティックコーディングに移行
2026 これまで手を出せなかったツール群を作成 このスライドも Codex CLI に Typst で作らせた 3
最近作ったツール Tokyo.R 121 arf rd2qmd jgd R 端末 radian の置き換え(Rust)
Rd → Markdown 変換 pkgdown の置き換え(Rust) R グラフィックデバイス httpgd の置き換え(C、TypeScript、Go、Rust) 4
ツール間のつながり Tokyo.R 121 arf、rd2qmd、jgd はそれぞれ無関係に始めたが、意外とそれぞれが関連して活きた rd2qmd → arf の内蔵 Help
Browser arf の IPC・Headless → jgd の AI エージェントによるバグ潰し・E2E テスト 5
arf Rust 製の R コンソール
着想 Tokyo.R 121 radian を置き換えたい radian を何年も使っていたが、Python 製なのが嫌だった - インストール面倒(uv
使えば今は楽ですが) - Windows 上の文字コード問題 「Ark と Nushell を組み合わせればできるのでは?」というところから開始、 なので Rust 製 7
インストール Tokyo.R 121 GitHub からダウンロードするか パッケージマネージャーで。 Windows winget install --id
eitsupi.arf macOS / Linux brew install arf 8
機能紹介 arf
R バージョン切り替え Tokyo.R 121 :switch メタコマンド rig と連携して R のバージョン
を切り替え 10
履歴・自動補完 Tokyo.R 121 履歴を使った自動補完 fish 風の履歴補完 Ctrl+R や履歴ブラウザで 履歴をあいまい検索 通常の
R や radian から 履歴を取り込み可能 11
Help ブラウザ Tokyo.R 121 Atusy 氏の felp パッケージを参考にした機能。ターミナル内でヘルプページを高速検索 インストール済パッケージをあいまい検索 Rd
を Markdown に変換して表示 12
IPC・Headless Tokyo.R 121 外部から R セッショ ンを操作 コマンド送信 コードの評価 端末なしで起動
R 側へパッケージの インストール不要 IDE / AI 連携を想定 テスト用途で有用と 後から気付く 13
rd2qmd Rd ファイルを Markdown・Quarto に変換
着想 Tokyo.R 121 r-polars のウェブサイトで使っている altdoc の Rd から md
への変換が 不正確なため、表示を直したかった Rd を正確に Markdown へ変換する決定的な実装は見つからず Rust はこの手の処理に向いているっぽいので、試しに作ってみた 15
機能紹介 rd2qmd
変換前 / 変換後 Tokyo.R 121 Quarto Markdown Rd # A
Simple Function \name{simple} \title{A Simple Function} \usage{simple(x, y = 1)} \arguments{ \item{x}{The first argument.} \item{y}{Defaults to 1.} } \examples{simple(1, 2)} → ## Usage ```r simple(x, y = 1) ``` ## Arguments | Argument | Description | |---|---| | `x` | The first argument. | | `y` | Defaults to 1. | 17
使い方 Tokyo.R 121 rd2qmd convert man/ -o docs/ # Markdownを出力
rd2qmd convert file.Rd -f md # 並列処理 rd2qmd convert man/ -o docs/ -j4 単体の Rd ファイルまたはパッケー ジ全体を変換 パッケージ内・外のリンクを解決 topic index を JSON で生成 R のインストールは不要 18
arf への組み込み Tokyo.R 121 rd2qmd Rd を Markdown へ変換 →
arf Help Browser パッケージのヘルプを端末に表示 rd2qmd の変換処理を使って、arf に Help Browser を実装できました。 19
jgd JSON を出力する R グラフィックデバイス
着想 Tokyo.R 121 httpgd jgd vscode 上で R を使う定番 R
パッケージ側は C 製・外部依存なし C++製の描画処理・ HTTP サーバーを同梱 描画命令を JSON に変換し 外部サーバーへ送信 ビルド大変、CRAN から度々削除 JSON の解釈は外部サーバー側の責務 Grant 氏が jgd を公開した際に、「これだ!」と開発に参加 21
機能紹介 jgd
動作例 Tokyo.R 121 画像は開発途中のターミナルグラフィックス対応レンダラー(未公開・飽きて放置中) 23
アーキテクチャ Tokyo.R 121 ggplot / base graphics ↓ R Graphics
API ↓ jgd C · zero dependency ↓ JSONL jgd 自身は描画しません R の描画命令を記録して JSON へ変換します Renderer 側が実際の描画を行います socket / named pipe / TCP ↓ Renderer VS Code / Browser / etc. 24
Renderer Tokyo.R 121 vscode-r バージョン 3 Deno 製のブラウザー向けサーバー リサイズや plot
history にも対応 jgd パッケージ内の仕様書に沿って サーバー開発可能 install.packages("jgd") jgd::jgd() plot(cars) 25
jgd の動作確認・E2E テスト Tokyo.R 121 headless arf R の起動・コード実行 →
jgd / Renderer 描画命令を連携 → headless browser 描画・リサイズ ブラウザをリサイズ → R でプロット関数を実行 → 再描画を確認 コーディングエージェントが R とブラウザの両方を操作・観測でき、 開発・デバッグが効率化 26
まとめ
まとめ Tokyo.R 121 arf:Rust 製の R コンソール rd2qmd:Rd から Markdown・Quarto
への変換 jgd:描画命令を JSON に変換する R グラフィックデバイス 興味があればぜひ使ってみてください Enjoy! 28