サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
ノーベル賞
zenn.dev/kou_pg_0131
複数の AI エージェントごとに毎回 MCP サーバーの設定をするのって面倒ですよね。設定忘れも頻繁にあります。 Codex CLI に至っては設定ファイルが TOML 形式なので、他の AI エージェントの JSON 形式の設定からコピペするのも一手間かかります。 # こんな感じ [mcp_servers.everything] command = "npx" args = ["-y", "@modelcontextprotocol/server-everything@latest"] [mcp_servers.context7] command = "npx" args = ["-y", "@upstash/context7-mcp@latest"]
{ "type": "repository", "dependencies": [ { "type": "workflow", "path": ".github/workflows/example1.yml", "dependencies": [ { "type": "job", "path": "job1", "dependencies": [ { "type": "action", "repository": { "owner": "actions", "name": "checkout" }, "ref": "v5", "dependencies": [] }, { "type": "action", "repository": { "owner": "actions", "name": "setup-node" }, "ref": "v4", "dependencies": []
コーディングエージェント便利ですよね。 Codex や Claude Code 、 Gemini CLI などをはじめとした、 CLI ベースの優れたコーディングエージェントが続々と登場していますが、しかしどれも決定的に欠けているものがあります。 そう、猫です。 一般的に開発関連のツールは猫であればあるほど良いとされていますが、今のところ有名なコーディングエージェントには僕の知る限り猫がいません。 ( コーギーならいる ) たとえどれだけコーディング能力が優れていようと、どれだけ素晴らしい UI/UX を提供していようと、そこに猫がいなければ意味がありません。 というわけで、猫と開発する次世代のコーディングエージェント「Cat Code」をリリースしました。 この記事では Cat Code の使い方と機能について紹介します。 使い方 機能 ファイル編集 日本語の理解 ultrathink
GitHub Actions ワークフローを TypeScript で記述できるツールを作りました。 なぜなら GitHub Actions ワークフローは TypeScript で記述できた方がいいので。 import { Workflow, Job } from "ghats"; const workflow = new Workflow("Hello", { on: "push", }); workflow.addJob( new Job("hello", { runsOn: "ubuntu-latest", }) .uses("actions/checkout@v4", { with: { "persist-credentials": "false" } }) .run("echo 'Hello, world!'"), ); export default workflow;
先日、 tj-actions/changed-files や reviewdog/action-* などのアクションの Git タグが書き換えられるという出来事がありました。 これにより、これらのアクションを Git タグで参照している GitHub Actions Workflow 内で悪意のあるコードが実行されてしまうという事態が発生しました。 このような事態を防ぐためには、アクションの参照には Git タグではなくコミットハッシュを使用するなどの対策が必要です。 # ❌ Git タグは書き換えられる可能性がある - uses: actions/checkout@v4 - uses: actions/checkout@v4.2.2 # ⭕ コミットハッシュを指定しておけば Git タグが書き換えられても影響を受けない - uses: actions/checkout@11bd71901
こんなタイトルの記事を見かけました。 GitHubの削除されたリポジトリや非公開のリポジトリに誰でもアクセスできてしまうのは仕様通り 元の記事はこちらです。 Anyone can Access Deleted and Private Repository Data on GitHub もしもこれらが本当にタイトル通りだとしたらさすがに大事件なので、検証してみました。 要約 Accessing Deleted Fork Data フォークのコミットは、フォークを削除したあとも、フォーク元のパブリックリポジトリ経由で参照できる。 Accessing Deleted Repo Data パブリックリポジトリのコミットは、フォークが作成されていたら、パブリックリポジトリを削除したあとも、フォーク経由で参照できる。 Accessing Private Repo Data プライベートリポジトリのフォ
たまに言っちゃうので自戒も込めて。 正しくは「Google Cloud」 2 年以上前に公式からアナウンスが出ています。 Google Cloud Platform が Google Cloud に名称変更 お客様のエクスペリエンスをシンプルにし、プロダクト間の一貫性を保つために、Google Cloud Platform は Google Cloud という名称になりました。 (以下略) Google Cloud の新しくなったホームページのご紹介 | Google Cloud 公式ブログ さらに、 Google Cloud Japan の Zenn Publication の記事内でも以下のように紹介されています。 コラム: Google Cloud? Google Cloud Platform? GCP? (中略) 実は 2022 年の 6 月に、公式ブログ でブランディングが変更さ
$ freeze main.js \ --window \ --show-line-numbers \ --border.radius 8 \ --shadow.blur 4 \ --margin 12 こういう画像を作れます。 こういうの この記事では Freeze の基本的な使い方について簡単に紹介します。 インストール 基本的な使い方 コマンドの実行結果を画像化 見た目のカスタマイズ フォント mac のウィンドウっぽくする 枠線 行番号 設定ファイル まとめ インストール Homebrew を使用している場合は brew install でインストールできます。
AWS マネジメントコンソールでスクショ撮ったり画面共有したりする際に色々隠すの面倒なので、自動で隠してくれる Chrome 拡張機能を作りました。 こういうの AWS Masking とは AWS Masking は AWS マネジメントコンソール上の秘匿情報を自動で隠す Chrome 拡張機能です。 Chrome Web Store からブラウザに追加するだけで有効になります。 サポートされている情報は以下の通りです。 これらの情報は AWS マネジメントコンソール上で自動的に隠されます。 Account ID ARN Access Key ID Secret Access Key こんな感じで自動でぼかしフィルターがかかります。 うっかり人前でシークレットキーを表示しちゃっても大丈夫 AWS Masking のアイコンをクリックすると設定用のポップアップが表示され、各情報のマスキング
ちなみに jq がインストールされている必要はありません。 jnv does not require users to install jq on their system, because it utilizes j9 Rust bindings. https://github.com/ynqa/jnv#installation JSON navigator and interactive filter leveraging jq Usage: jnv [OPTIONS] [INPUT] Examples: - Read from a file: jnv data.json - Read from standard input: cat data.json | jnv Arguments: [INPUT] Optional path to a JSON file. If not prov
HTML/CSS や JavaScript など、 Web フロントエンドにおいては配信時にファイルを minify することが一般的です。 ファイルを minify する = ファイルサイズを小さくすることでネットワークの通信量を削減し、結果として Web ページの読み込み速度を向上させることができます。 <!-- 例えばこれが --> <!DOCTYPE html> <html> <head> <title>Hello World Sample</title> </head> <body> <h1>Hello, World!</h1> <button id="button">Click</button> </body> <script> const button = document.getElementById("button"); button.addEventListener("
Shittier とは コードを書くときは、なるべくコードの可読性を下げるために普段から様々な工夫をすることが大切です。 インデントを揃えない 変数や関数などの名前の大文字 / 小文字をランダムにする 無駄なスペース / タブ / 改行を追加する 毎回これらを手作業で行うのは大変ですが、そこで便利なのが Shittier です。 Shittier はコードを可能な限り汚くすることを目的とした整形ツールです。 どんなにコードが綺麗に整えられたプロジェクトでも、 Shittier を使えば容易に混沌をもたらすことが可能です。 インストール npm 経由でインストールできます。 $ shittier --help Usage: shittier [options] <input> <output> Options: --version Show version number [boolean]
前から気になっていた Litestream を Cloud Run で使ってみたので、そのメモです。 Litestream とは? サンプルコード 手順 動作確認してみる 制限事項 おまけ まとめ 参考 Litestream とは? Litestream は、 SQLite のデータベースファイルを Amazon S3 や Google Cloud Storage などのオブジェクトストレージにリアルタイムでレプリケートすることができるオープンソースのツールです。 例えば通常 Cloud Run で DB エンジンとして SQLite を使用しようとしても、コンテナが破棄されると同時に毎回 SQLite のデータベースファイルも消えてしまうため、データを永続化することができません。 しかし Litestream を使用すれば、 SQLite のデータベースファイルをオブジェクトストレージに
こういうのを作りました。 こういうの レビューリクエストされている Pull Request の一覧 自分の Pull Request の一覧 通知の一覧 を表示しています。 各アイテムをクリックすればブラウザで対象のページが開きます。 通知に関してはメニューバー上で既読にすることもできます ( 一括既読も可能 ) 。 とにかく仕事が捗ってしょうがないので紹介です。 仕組み xbar というオープンソースの Mac アプリを使って実現しています。 xbar はプラグインを使うことで Mac のメニューバーに様々な情報を表示することができるアプリです。 Homebrew 経由でもインストールすることができます。 xbar プラグインを使用する手順 それでは今回作成した xbar プラグインをインストールして使用する手順を紹介します。 ソースコードはこちら。 0. 前提条件 今回作成した xb
Thredot はスレッド形式でメモを書けるサービスです。 Google アカウントがあればログインできます。 こういうの Playground ページを用意しているので、気軽に使い心地を試してみてください。 Thredot のコンセプト Thredot はアイデアや情報をメモに書き出すハードルを限界まで下げることを目指しており、そのために様々な工夫をしています。 メモを整理させない 爆速な検索機能 公開範囲を設定できる WYSIWYG エディタを採用 メモを整理させない Thredot では徹底的にメモを整理させない方針を取っています。 僕は「整理するための機能が用意されていると整理をしたくなってしまう」人間です。 でも整理するのって超面倒くさいです。 ( 支離滅裂 ) 結局中途半端に整理しようとして余計にゴチャゴチャになり、最終的にメモを書くこと自体が億劫になってしまいます。 Thre
めちゃくちゃ良い記事でした。 「OSS は使っていることを公言するだけでも貢献になる」と songmu さんが言っていたので、私も貢献したいと思います。 僕も貢献したいのでよく使うコマンドラインツールを紹介していきます。 特定のプログラミング言語等に依存するツールは省いています。 actionlint - GitHub Actions の Workflow ファイルの静的検査 GitHub Actions の Workflow ファイルの静的検査ツールです。 かなり精度が高く、色々な設定ミスを検知してくれます。 エラーメッセージも見やすくて助かります。 aicommits - コミットメッセージを自動生成 変更内容を元に自動でコミットメッセージを AI が生成してくれるツールです。 コミットをする前にちゃんと確認してくれるのも安心感があって良いです。 cLive - ターミナル操作を自動化
Terraform 1.5 のベータ版がリリースされています。 Terraform 1.5 で追加される機能の中には以下のようなものが含まれています。 import ブロック terraform plan の -generate-config-out オプション Terraform では手作業などで作成済みの既存リソースも terraform import コマンドを使用して Terraform の管理に追加することができます。 しかし、 import したリソースの HCL 自体は自分で書かなければいけません。 もしも既存リソースの HCL を自動で生成したい場合は GoogleCloudPlatform/terraformer などのサードパーティ製のツールを使用する必要があります。 ところが、 Terraform 1.5 で追加される import ブロックと terraform p
先日 Terraform v1.5.0-beta1 がリリースされました。 NEW FEATURES を眺めてみると、どうやら import ブロックというものが追加されているみたいです。 今までは既存のリソースを Terraform の管理下に追加するためには terraform import コマンドを使用して 1 つ 1 つ import する必要がありました。 import ブロックを使用することでリソースの import を宣言的に実行することができるようになりました。 というわけで試してみました。 ( この記事とは関係ないですが check ブロックも気になりますね。 ) 検証環境 Terraform v1.5.0-beta1 サンプルコード 今回紹介するコードは以下のリポジトリで管理しています。 試してみる 準備 手作業でリソースを作成 検証するための AWS リソースを作成
Notion で Integration を作成して Notion API を使用してデータベースを操作するまでの手順メモ。 準備 1. Integration を作成する My integrations ページに遷移します。 Create new integration をクリックします。 Name には任意の Integration 名を入力します。 今回は Example Integration としておきます。 Associated workspace には Integration をインストールするワークスペースを選択します。 自身がワークスペースの Admin レベルの権限を持っている必要があります。 Capabilities には Integration から実行できる機能を選択します。 次のような項目があります。 Integration の用途に合わせて適切に設定してくださ
GitHub の草 ( Contribution Graph ) をどうしてもコンソールに生やしたくなることはありませんか?ありますよね?僕はありません。 そんなときに便利な GitHub CLI 拡張機能「gh-grass」を作りました。 こういうことができます。 他にもこんなことや、 文字をカスタマイズ こんなこともできます。 アニメーション この記事では gh-grass のインストール方法から基本的な使い方についてまとめます。 インストール
羊を眠らせる sleep コマンドである sheep を作りました。 この記事では sheep のインストール方法 ~ 使い方についてまとめます。 インストール 使い方 まとめ インストール Homebrew を使用している場合は brew install でインストールできます。
以前から作ってはいたんですが最近 1 から作り直しました。 正直これといって特筆するようなことは何もないんですがせっかく作ったので紹介です。 リポジトリ 作った理由 名刺代わりです。 自己紹介するときにスキルセットや成果物などを毎回話すのは面倒臭い手間なので、「URL ひとつ渡せば大体わかる」みたいなページが欲しかったというのが理由です。 そのようなニーズを満たすためのサービスは色々ありますが、せっかくなので自分で好きなようにカスタマイズできるものを作ろうかなと思った次第です。 あと自分の年齢とか経歴とか結構忘れるので、そういうときにパッと見て確認できるので便利です。 利用技術など フロントエンド Next.js + TypeScript で実装しています。 ごく普通の Next.js アプリケーションです。 UI フレームワークには Mantine を採用しています。 普段は Mater
備忘録。 サンプルコード 今回紹介するサンプルコードは以下のリポジトリで管理しています。 準備 1. GitHub Actions 用の ID プロバイダと IAM ロールを作成する GitHub Actions で OIDC を使用して AWS 認証を行うために、下記ドキュメントを参考に ID プロバイダと IAM ロールを作成します。 今回は例として github-actions-ecr-push-example-role という名前で IAM ロールを作成しました。 2. ECR リポジトリを作成する Docker イメージを push する ECR リポジトリを作成します。 Terraform で作成する場合のサンプルコード
Terraform 1.4 が GA になりました 🎉🎉🎉 Terraform 1.4 では新しく terraform_data リソースが導入されました。 terraform_data リソースは null_resource を置き換えるものであり、さらに異なる用途にも使用できます。 この記事では terraform_data リソースの使い方についてまとめます。 null_resource の代わりに使う replace_triggered_by に使用する サンプルコード この記事で紹介するサンプルコードは以下のリポジトリで管理しています。 検証環境 Terraform v1.4.0 使い方 null_resource の代わりに使う 前提知識として、 null_resource は何も作成しないリソースです。 Provisioner と合わせて使用することで、他のリソースの状
Description: GitHub Actions Importer helps you plan, test, and automate your migration to GitHub Actions. Please share your feedback @ https://gh.io/ghaimporterfeedback Options: -?, -h, --help Show help and usage information Commands: update Update to the latest version of GitHub Actions Importer. version Display the current version of GitHub Actions Importer. configure Start an interactive prompt
Twitter で以下のツイートを見かけました。 そこで調べてみたところ、 GitHub では次の場所に置かれている README を認識するようです。 .github/ リポジトリのルートディレクトリ docs/ 複数の README が含まれている場合は、 .github/ 、ルートディレクトリ、 docs/ の順に優先されます。 例えば冒頭のツイートの reduxjs/redux-toolkit は .github/ ディレクトリ内に README.md (正確には packages/toolkit/README.md へのシンボリックリンク) を置いています。 ほぇー知らんかったってなったのでついでに実際に挙動を見てみました。 挙動を見てみる docs/README.md を作成します。 docs/README.md が表示されました。 docs/README.md が表示されてい
Slack API を使用してアプリを作成 ~ メッセージを投稿するまでの手順メモ。 アプリを作成する 「Slack API: Applications」 にアクセス。 ワークスペースにログインしていない場合はする。 Create New App をクリック。 From scratch をクリック。 任意のアプリ名を入力、ワークスペースを選択し、 Create App をクリック。 これでアプリが作成される。 スコープを設定する OAuth & Permissions をクリック。 ページの中ほどに Scopes セクションがあり、ここでアプリにスコープを設定することができる。 ボットとして API を実行する際のスコープを設定する Bot Token Scopes と、ユーザーとして API を実行する際のスコープを設定する User Token Scopes がある。 まず Bot T
躓きまくったので備忘録。 AWS はこっち。 概要 GitHub Actions では OpenID Connect (OIDC) がサポートされています。 OIDC を使用することによりサービスアカウントキーなどを用意することなく Google Cloud に対する認証を行うことができます。 詳細については下記ページをご参照ください。 この記事では GitHub Actions で OIDC を使用して Google Cloud へ認証を行うまでの手順をまとめます。 リポジトリ この記事内で使用しているサンプルコードは下記リポジトリで管理しています。 手順 1. IAM Service Account Credentials API を有効にする OIDC で認証情報を作成するときには IAM Service Account Credentials API を利用するため、有効にしておく
GoReleaser と GitHub Actions を使って Go で作った CLI のリリースを自動化して、ついでに Homebrew でインストールできるようにするまでの手順メモです。 ちなみに先日、 Go で CLI を作る時に便利だったパッケージについて簡単に紹介する記事を公開しました。 こちらも興味があれば見てみてください。 検証環境 Go v1.19 GoReleaser v1.14.1 GoReleaser Action v4.1.0 GoReleaser とは GoReleaser は Go プロジェクトのリリースを自動化するツールです。 GitHub・GitLab・Gitea へのリリースの他、 Linux パッケージや Homebrew Taps の作成など、 Go プロジェクトのリリースに関する様々なタスクを自動化することができます。 基本的には CI 上で実行さ
次のページ
このページを最初にブックマークしてみませんか?
『zenn.dev』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル