Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Wasmで社内ツールを作って配布しよう
Search
asuka
July 25, 2025
Technology
0
240
Wasmで社内ツールを作って配布しよう
https://niigata-5min-tech.connpass.com/event/362312/
asuka
July 25, 2025
Tweet
Share
More Decks by asuka
See All by asuka
ライブラリを公開してメンテナンスした一年
askua
0
6
Wasmの気になる最新情報
askua
0
280
Wasmのエコシステムを使った ツール作成方法
askua
0
310
Pure Goで体験するWasmの未来
askua
1
280
Wasm元年
askua
0
270
wstdなんだか良さそう
askua
0
95
Dartでウェブ開発 (やりたい)
askua
0
70
Denoでパッケージを作りJSRに公開する
askua
0
63
WASI 0.2のinit処理
askua
1
160
Other Decks in Technology
See All in Technology
Kiro を用いたペアプロのススメ
taikis
1
220
2025年 開発生産「可能」性向上報告 サイロ解消からチームが能動性を獲得するまで/ 20251216 Naoki Takahashi
shift_evolve
PRO
1
200
2025-12-18_AI駆動開発推進プロジェクト運営について / AIDD-Promotion project management
yayoi_dd
0
110
Bedrock AgentCore Memoryの新機能 (Episode) を試してみた / try Bedrock AgentCore Memory Episodic functionarity
hoshi7_n
0
140
たまに起きる外部サービスの障害に備えたり備えなかったりする話
egmc
0
270
生成AI時代におけるグローバル戦略思考
taka_aki
0
200
初めてのDatabricks AI/BI Genie
taka_aki
0
210
業務のトイルをバスターせよ 〜AI時代の生存戦略〜
staka121
PRO
2
220
MLflowダイエット大作戦
lycorptech_jp
PRO
1
140
AWSを使う上で最低限知っておきたいセキュリティ研修を社内で実施した話 ~みんなでやるセキュリティ~
maimyyym
2
1.8k
Microsoft Agent 365 についてゆっくりじっくり理解する!
skmkzyk
0
380
Amazon Quick Suite で始める手軽な AI エージェント
shimy
0
240
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
515
110k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
WCS-LA-2024
lcolladotor
0
380
Testing 201, or: Great Expectations
jmmastey
46
7.8k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
115
91k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
A Tale of Four Properties
chriscoyier
162
23k
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Transcript
社内ツールを作って配布しよう N5T #21 Jul 25, 2025 Wasmで
WHOAMI asuka • 株式会社モニクル/SWE ◦ Monicle Techbook vol.1 技術書典17 •
Wasm関連の同人誌・商業誌の執筆 ◦ 実践入門WebAssembly ◦ WebAssembly System Interface入門 ◦ ご注文はWASIですか?? 技術書典16 ◦ Wasm Cookbook vol.2 技術書典17 ◦ Wasm Cookbook vol.3 技術書典18 ◦ Wasm Cookbook vol.4 技術書典NT • 新宿御苑.dev ◦ 新宿御苑.wasm #2025.6.25 LTイベント 2 商業誌 Cookbookシリーズ ごちWASI
前回のあらすじ 3
新宿御苑.wasm #2025.6.25 4 https://speakerdeck.com/askua/wasmyuan-nian Wasm元年なので,
新宿御苑.wasm #2025.6.25 5 https://speakerdeck.com/askua/wasmyuan-nian 社内ツールを作ろう という話をした
サンプル作ってきたよ 6 MCPサーバーのサンプル持ってこようとしたけれども,既存のライブラリがビルド依存の関係で使えなかった
Wasmのおさらい • シングルバイナリでどこでも実行できる • 配布する手段がある • セキュアである → マルチプラットフォーム時代に適した仕組みである 7
LLMを使えば 社内ツールなんて 作らなくてもいいのに
read-web : 指定したURLのHTMLをMDに変換 8 • https://github.com/a-skua/example-wasi/tree/main/read-web • https://github.com/users/a-skua/packages/container/package/read-web
実装 • Go (tinygo) • https://github.com/JohannesKaufmann/html-to-markdown ◦ HTML to Markdown
• https://github.com/a-skua/go-wasi ◦ Goの標準パッケージでサポートできていない HTTP通信のサポート ◦ ※ HTTP通信はWASI 0.2でサポートされている 9
配布 Container RegistoryであればどこでもOK → e.g. Docker Hub 今回は GitHub Packages
push • wkg oci push ghcr.io/a-skua/read-web:1.0.0 bin/read.wasm pull • wkg oci pull -o read.wasm ghcr.io/a-skua/read-web:1.0.0 10
実行 wasmtime run -S http read.wasm -url https://example.com 11 ランタイム
ランタイムの権限
セキュア ランタイム権限の他にも,ユーザーがAPIを制御しやすい 12 OS Wasm ランタイム (権限制御) Wasm モジュール API
API Wasm モジュール func Handle() { panic("Handle is not supported in this example") } wac plug read.wasm \ --plug omit.wasm \ -o omit-read.wasm
セキュア 13 panic: Handle is not supported in this example
Wasmで社内ツールを作って配布しよう fin