Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Wasmで社内ツールを作って配布しよう
Search
asuka
July 25, 2025
Technology
340
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Wasmで社内ツールを作って配布しよう
https://niigata-5min-tech.connpass.com/event/362312/
asuka
July 25, 2025
More Decks by asuka
See All by asuka
GoとSIMDとWasmの今。
askua
3
640
2025年ふりかえり
askua
1
250
ライブラリを公開してメンテナンスした一年
askua
0
120
Wasmの気になる最新情報
askua
1
420
Wasmのエコシステムを使った ツール作成方法
askua
0
470
Pure Goで体験するWasmの未来
askua
1
1.1k
Wasm元年
askua
0
420
wstdなんだか良さそう
askua
0
160
Dartでウェブ開発 (やりたい)
askua
0
120
Other Decks in Technology
See All in Technology
フィンテック養成勉強会#68
finengine
0
180
Tofu-Controller lightning talk @ Containerday 2026
gionn
0
150
AI × アーキテクト 第1・2章|生成AIの課題とアーキテクトの素養
daidaidai
0
200
会社紹介資料 / Sansan Company Profile
sansan33
PRO
31
430k
Running Kotlin + Quarkus with Lambda
nealle
1
4.1k
CTO Night|NotionのAIエージェントとFDE
kzkhykw1991
0
290
専門領域のAIをどう評価するか
bengo4com
2
370
その Valkey 使いこなしていますか?
onk
PRO
5
1.7k
LLM-as-a-Judgeは本当に信頼できるのか――評価器を評価する話
taka_aki
2
950
AI時代のGraphQL
joere
1
270
局所最適は悪ではない。壊れているのは指標です。量と質を同時に見る先行指標の設計
recruitengineers
PRO
2
110
LambdaWebFunctionsを試してみた / exploring-lambda-web-functions
koukihosaka
1
370
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.5k
Believing is Seeing
oripsolob
1
250
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
3
3.9k
Designing for humans not robots
tammielis
254
26k
Code Reviewing Like a Champion
maltzj
529
40k
How to build a perfect <img>
jonoalderson
1
6.1k
Odyssey Design
rkendrick25
PRO
2
880
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
310
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
580
[SF Ruby Conf 2025] Rails X
palkan
3
1.5k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
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