kkamegawa's weblog

Visual Studio,TFS,ALM,VSTS,DevOps関係のことについていろいろと書いていきます。Google Analyticsで解析を行っています

Azure DevOps からGitHub Coding Agentを使ってみる

learn.microsoft.com

learn.microsoft.com

github.blog

Public Preview…とGitHubのほうでは書かれていますが、Private Previewです(当時Coding Agentがパブリックプレビューだったので)。

devblogs.microsoft.com

GitHub Coding Agentはみんな使っているとは思いますが、Azure Boardsからも使えるようになっています。今のところ申し込みですが、存在は公開されているし、Igniteでデモも行われていました。今のところAzure DevOpsにはCopilot系の機能は直接実装しないようで、あくまでもGitHubで提供されているものを使う、ということだそうです。

なお、GitHub Enterprise Cloudライセンスを持っている場合、Azure DevOpsのBasicライセンスが自動的に付与されるので、Enterprise Cloudを使っている場合、費用的なものは発生しません…でも多分これGitHubをEMUで作り、Azure DevOpsも同じEntraに接続してないと駄目な気がするんですよね。ユーザーの区別できないから。

やってみましょう。GitHubではissueを無効化しておきます。必須ではありませんが、Boardでチケット管理するならば分散しては困るので、個人的にはIssueは無効にしたほうがいいと思います。

GitHubのレポジトリにはすでにawesome-copilotレポジトリから必要な情報をとってきており、Azure のインフラストラクチャをbicepで作ってもらいます。

あらかじめGitHubを接続しておいてから、Copilotアイコンをクリックすると、おなじみブランチとレポジトリが指定できます。

Draft Pull Requestが作成されました。

普通に動いています。この辺はGitHubのインフラを使うので、MCPやcoding Agentの事前設定はやっておいてください。

Coding Agentもリリース当初よりはずいぶんよくなったような…インストラクションとかちゃんと設定してはいますけれど。

作業中の状態や関連付けられている様子がちゃんとBoardsでも見えます。Coding Agent内のPR内にあるAB#1674はAzure Boardsのチケット番号です。クリックするとBoardのチケットが表示されます。

あとは普通のGitHub Coding AgentなのでGitHub側のドキュメント見てください。ちょっと気になっているのですが、これ今GitHubにログインした人のライセンスで動くんですよね…?(ぼっちテナントなので検証できない)。

Microsoft Ignite 2025 四日目と総括

Ignite 2025が終わり、サンフランシスコ国際空港で書いてます。はじめてのIgniteでしたが(会う人みんなに驚かれた)、行く前は不安いっぱいでしたが、楽しかったです。

治安

いわれていた通り、テンダーロインエリアはいろいろ(穏当な表現)やばかったですが、ちょっと間違えて入ったくらいでは命の危険があるなというくらいではありませんでした。もうそこらへんにいる(歩いているではない)人が違うので、すぐわかる感じです。実はパクられてもいいように、もう手放そうと思っているAndroidにSIMもいれず、持ち歩くようとして持ってきたのですが、iPhoneをすぐに強奪する気満々、という人には少なくとも出会いませんでした。USの人も高いiPhone持って歩いているくらいでした。

これが日本では禁止されている植物のにおいか、というのはよくわかりました。服についてて、国内で止められないか心配です。シアトルダウンタウンでは一階のお店はクローズが多いとか、鉄格子でしっかりしているところが多かったですが、ここはそんなこともなく少し拍子抜けしたくらいです。Macy'sは…入口そばにあるえれーベータで直接チーズケーキファクトリーに行っただけなのでがらんとしているかはよくわかりませんでした。

外国ならではの気を付けるところはありますが、過剰なほどではないかも、とは思いました。でも会社の人は飴をもらいそうになったそうです(同行者が拒否してくれたらしい)。

反Microsoftデモも二日ほど見かけましたが、デモとしてはまっとうなやつ(声を張り上げるだけ)だったので、まぁそういうものかというものでした。

物価

高い。とても高い。もう泣きそうなくらい高いです…ビール小瓶が$12とか、今飲んでいるコーヒーが$4.5とかマジ泣きそうです。缶コーヒーみたいなものは見かけないので、たっかいの飲むしかない。期間中のイベント会場ではフリーで飲めますが…。

最終日一風堂でラーメン食べたのですが、日本では1200円するかどうか、というものが$32でした(緑茶、卵付けた)。いやおいしかったですが…。ほかの日はもう朝はそこらのストアで買ったバナナとヨーグルト、晩御飯はイベント会場で出たパーティ飯でしのいだので、そんなにかかりはしませんでしたが、これ毎日食べるとなるとマジお財布つらい。

話には聞いていましたが、カード決済するとき、日本円かUS dollerでやるか選ぶ機械を何回か見ました。店によってはちゃんと日本円のレートを出してくれるところもありますが、基本的にはUSDが正解。店に為替決めさせるといくらになるかわかりません。シアトルでは見たことがなかったので覚えておいてよかったです。

チップも18%からとかマジ泣きそう。みんなで食べたとき、カード支払いをsplit(均等割り)できるのですが、最初に入った店では「二人までしかできない」と言われて心の中で「絶対嘘」とか思っていたけど、言わないでおきました。まぁ店側にしたらめんどくさいだけですしね。前15人くらいでやってもらったときはさすがにチップを多め(とはいってもその時でも18%くらいだったはず)に出しました。

ホテル

何人かに聞いたら最近ホテルの掃除とかしてもらわないからチップも払ってない、と聞いてびっくりしました。寝に帰るだけだから、まぁいいかということで滞在中はPrivacyの札下げてました。2 bedsだったので、タオルとかも2人分あったし。

私はだいたい捨てる服を持っていくので、今回も半分くらいの服は捨てて帰りました。あいたスペースにお土産やもらったグッズを入れてます。

セッション

今回はLab多めに入れたのですが、ちょーっとびみょーかなーという感じでした。ブレイクアウトは質問しなければ動画でもいいかな、と。後で聞きたい話はあれどフィードバックの口はあるので、そっちで聞いてみようと思います(これはMVPとしてマジありがたい特典です)。

次回はシアターセッション中心でもいいかなぁと思いました。非常に興味深いシアターセッションもあったようですし。実は最終日一風堂で待ってたら偶然ごとーさんと遭遇して、一緒に食べてWindows, ハイパーコンバージドインフラ, 今後のHyper-Vはどうなる(Azure的に)という話で盛り上がりました。

blogs.networld.co.jp

私もまだ知らない(のでNDAではない)ですが、AzureのHypervisorが変わる…今までAzure VMはAzureからみてNested Hyper-Vで動いていたわけですが、それを取り除く(準仮想化で動かす)ということはですよ…。確かにいろいろな事情的にわかるんですが、一抹の寂しさを覚えました。

日本人向けのセッションで600人も参加していると聞いてびっくりしました。Buildはそんなにいなかったのに…。2時間も日本人向けのラップアップででかい部屋でやるのはほんとにびっくりです。アンケート良ければまたやるらしい。

来年来れるかどうかわかりませんが、Buildにはまたいきたいなぁ。

Microsoft Ignite 2025 3日目

時差ぼけつらいというか、これが時差ぼけかという感じで朝眠かったです…セッションの最中気づいたら意識飛んでました。GitHubのセキュリティコーディングとかGitHub Copilot Coding Agentの話は見直します…。

ignite.microsoft.com

ignite.microsoft.com

いつもの面白枠セッション。

ignite.microsoft.com

ALTA 6600使ってトグルスイッチでping-pongやる二人とか、Mark RussinovichのNT Internalサイトを掘り起こして紹介するとか、50歳代じゃないとわからないだろネタが満載でした。Zorkのデモやるのはなんでかなと思ったらZork Ⅰ,Ⅱ,Ⅲがオープンソースで公開されたからなんですね。

opensource.microsoft.com

当時日本ではPC-98互換機が人気で私もZorkやる機会はありませんでしたが、名前だけは知っている、という感じです。1970-80年代から2020年代までの流れで今OSSとして1970年代に人気を博したZorkが使えるよーということで歴史を感じさせる面白ネタでした。

ignite.microsoft.com

これあとラボの予約が入っていたので、抜けたのですが1792コアのLinux仮想マシンにタスクマネージャー作っていつもの通りデモをするというものでした。Windowsではまだ1792コアサポートしてなかったかなぁ…(実機が存在しないものはWindowsでは実装されないというポリシーを昔聞いた記憶)と思ったら今はCPUコア数Unlimitedなんですね。Azure Editionでは2048。あれ、そしたらWindowsでもよさそうなと思ったらいい感じの表示にならなかったからなのか?

learn.microsoft.com

しかし、抜けたラボは大失敗でした。Skillableのラボのプロビジョニングが誰もうまくいかなかったようで、ラボそのものがキャンセルになりました。15分くらいかかるよーと出ていたけど、あまりに遅いので聞いたら「ログイン後も裏でやってるから大丈夫」とかいうアシスタントの方の返事でしたが、そんなわけないだろーと思ったけど、案の定…。

github.com

このレポジトリの中にソリューションが入っていると思ったらそうでもなくてドキュメントの中にある手順の複合か…後でやってみよ。

そのほかはDefender関係のラボも受けたんですが…1時間ちょっとだからかもしれませんが、どうもDefender系はどれもびみょーという印象がぬぐえず。来年に期待。

食べ物と観光

夕食はフィッシャーマンズワーフまでWaymoで移動してチャウダーをいただきました。シアトルのI'varsと違ってピリッと来るCLABでしたが、これはこれでおいしい。パンも酸味が少ないものだったのでするすると行けました。$16くらい。

Igniteのイベントに朝食はないので調達するのですが、どうもUSのスーパーは日本のようなちょっとしたパンがなく(ほとんど焼く前提)、これ…とヨーグルト。

あと、日本から複数人で行って甘いものが大丈夫な方にぜひ試してほしいものがこれ。

なんとクッキー出来合いの生地状態で、あとはこのままオーブンで焼くだけのものなのですが、2年前?位から若者の間でこれをそのまま食べるのが流行りだしたのだそうです。もちろん焼く前に食べることなんて考えられていなかったものなので、いろいろリスクがある、ということで生食用のものができたのだそうです。

USのスーパーの冷凍コーナーにあるそうなので、ぜひ試してみてください。もちろん日本基準で激甘です。

11月ということでターキーが並んでます。焼くのはたしなみらしいですが、ホテル暮らしだとさすがにね。去年のBuildでは長期滞在者向けのホテルだったので、オーブンもあり、その気になれば焼けそうでした。

フィッシャーマンズワーフからの夜景きれいでした。この時間(19時)でもトドとかがうるさいくらい鳴いてました。

Microsoft Ignite 2025 二日目の感想やら

二日目です。なんか寝れない…。

Hub

キーノートで出ていたHyperscale AI DatacenterのLegoのでっかいのがありました。こういうのいいねー。

昨日も行きましたが、今日も行ってみたら、GitHubで非常にお世話になっているCommunity managerのHowardさんがいて挨拶できてよかった。認知されていて非常にうれしい。

今日の戦利品。昨日Copilotトランプもらっているの見て、欲しかったのでもらえてよかった。

セッションから

最初はMCP受験は…爆散。同じDP-700受けたんですが、前回はソリューション問題を忘れてしまうという失態を犯してしまいましたが、今回は最初からソリューション問題だったおかげで助かりました。合格点にはだいぶ届かなかったけど…。Fabric勉強しなおします。

ignite.microsoft.com

次はこれを聞く…つもりがなんと満員で立ち見も無理ということであきらめざるを得ず…近所のテーブルで少し仕事してて並ばなかったのですが、そんなに列ないなと余裕こいていたら実は中にもっといたという落ちでした。

ignite.microsoft.com

お昼食べた後はIgniteで発表されたManaged Instance for App Service。いるのか?と思わないでもないですが、レガシーマイグレーションだけどVMは使いたくないけど、App Serviceではちょっと…というニーズにこたえる感じで作られたようです。

learn.microsoft.com

具体的には今までレガシーなCOMアプリケーションとか、インストーラーが必要な3rdパーティーコンポーネント、SMBのファイル共有前提(例えばログ)がどうしても必要なケースではVMを選ばざるを得なかったのですが、そういう向きに押して行けそうです。

ignite.microsoft.com

Inside Azure Innovations with Mark Russinovichはちょっと人多そうだしということであきらめて、DevSecOpsのこちら受けたのですが、うーん…うけなくてもよかったかな。今までDefender for DevOpsではせいぜいGitHub Advanced Securityのアラートが見える、bicepのスキャンもできる、エージェントレススキャン(YAML書かなくても勝手に差し込まれる)ができるという程度だったのですが、依存コンポーネントやAttack Surfaceもグラフで視覚化されるというのが新しい話。

ちなみにエージェントレススキャンは全く話出なかったけど、Azure DevOpsでもサポートされています。

この図はちょっといいなと思いました。開発環境、特にお客さん向けの請負で自社内で環境作る場合、常に会社のインフラセキュリティと開発の自由度のせめぎあいです。チェックはしなければいけないけど、開発中のリスク許容している部分を起点に社内に入り込まれると困る。協調はしなければいけないけど、通常(特に大企業では)強調するすべはない。たいていは一方的に言われて終わり。

じゃあ環境切り離すかといわれると専任チームがいない状態ではチェックすらできない(かもしれない)。Defender for Cloudはその辺助けてくれるサービスになるかもしれませんね。

Lab

github.com

ignite.microsoft.com

A2Aのマルチエージェントシステムのハンズオンでした。あれ…SRE Agentだと思い込んでた…(反省)。どんなふうに動くかはわかりやすいですね。これBing with Groundingをリソースとして使うので、やるときは気を付けてください(お高いです)。

こんな感じでいろいろなエージェントの話も途中に出てきていました。ハンズオンでは一か所動かないところ(httpsリクエスト必須だったため、ローカルのhttpで拒否されて動かない)があったけど、ボーナスセクションだったから飛ばしました。ヘルプ依頼したけど、チューターが忙しすぎて回ってこなかった。

ignite.microsoft.com

最後のおまけでMicrosoft Purview Integration with Microsoft Defender XDRも入ってみましたが、これはハンズオンの形をとった、デモセッションというのが正しい感じでした。Labは10分もあれば終わる程度の6つのタスクしかなくて、説明のデモを聞いているほうがよかった。

ただ…これClassicポータルじゃないとできないんじゃないか?というTaskでUIがわからんちん…。普段(?)プライベートプレビューとかでいろいろやっているところでもあったので、まったくわからないところではなかったです。Intermdediateだったのでそんなものでしょうか。

ただ、ちゃんと使えるデータが入っているのはいいですね。自分で起こすのもめんどいし…。

エージェント、エージェント、エージェント

もう二言目にはエージェントみたいなIgniteですが、エージェントだからと気張らずに、APIの形が一つ増えた、ということで接すればいいんじゃないかなという話を周りからも聞いて、そうだよね、と思うことにしました。

今までだとXML Schemaで厳密、JSONでかなり緩く(でも結局JSON Schemaもできたけど)、そしてさらにAI Agentで(Structured Outputみたいなものはあれど)もっとスキーマレスというか、緩くできるようになったかな、という感じです。セキュリティやガバナンスも前からあった話だし、データの整理もそう。

AIエージェントだからすごいことをとかではなくて、使う側はプロDevの知識がなくてもいろいろ試す幅が広がったと思えばいいんじゃないかなと思っています。作る側はどんどん新しいフレームワークなどが出てきて大変ですが😉。