Commit bfaa053
Target nested SCM repos from Active Agents (#562)
VS Code can expose the outer monorepo plus nested storefront/backend repositories at the same time, so the Start Agent command now infers the active repo and launches through gx with an explicit target. The ambiguous picker also shows branch and dirty-state cues before launching.
Constraint: Start Agent must not switch or mutate the outer checkout when the user is working inside a nested repository.
Rejected: Keep scripts/codex-agent.sh and npm run agent:codex launcher fallbacks | they do not provide an explicit nested target and preserve the wrong-root failure mode.
Confidence: high
Scope-risk: narrow
Directive: Keep source and template extension files in parity when changing bundled Active Agents behavior.
Tested: node --test test/vscode-active-agents-session-state.test.js
Tested: node --check vscode/guardex-active-agents/extension.js && node --check templates/vscode/guardex-active-agents/extension.js && diff -u vscode/guardex-active-agents/extension.js templates/vscode/guardex-active-agents/extension.js
Tested: openspec validate agent-codex-active-agents-selected-scm-nested-start-2026-05-11-15-59 --type change --strict
Tested: openspec validate --specs
Not-tested: Manual VS Code SCM selection against a real multi-root window.
Co-authored-by: NagyVikt <nagy.viktordp@gmail.com>
Co-authored-by: OmX <omx@oh-my-codex.dev>1 parent 7f75922 commit bfaa053
7 files changed
Lines changed: 230 additions & 48 deletions
File tree
- openspec/changes/agent-codex-active-agents-selected-scm-nested-start-2026-05-11-15-59
- specs/active-agents-selected-scm-nested-start
- templates/vscode/guardex-active-agents
- test
- vscode/guardex-active-agents
Lines changed: 2 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
Lines changed: 14 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
Lines changed: 20 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
Lines changed: 36 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1523 | 1523 | | |
1524 | 1524 | | |
1525 | 1525 | | |
1526 | | - | |
1527 | | - | |
1528 | | - | |
1529 | | - | |
1530 | | - | |
1531 | | - | |
1532 | | - | |
1533 | | - | |
1534 | 1526 | | |
1535 | 1527 | | |
1536 | 1528 | | |
| |||
1608 | 1600 | | |
1609 | 1601 | | |
1610 | 1602 | | |
1611 | | - | |
1612 | | - | |
1613 | | - | |
1614 | | - | |
1615 | | - | |
1616 | | - | |
| 1603 | + | |
| 1604 | + | |
| 1605 | + | |
| 1606 | + | |
| 1607 | + | |
| 1608 | + | |
| 1609 | + | |
| 1610 | + | |
1617 | 1611 | | |
| 1612 | + | |
| 1613 | + | |
| 1614 | + | |
| 1615 | + | |
| 1616 | + | |
| 1617 | + | |
| 1618 | + | |
| 1619 | + | |
| 1620 | + | |
| 1621 | + | |
| 1622 | + | |
| 1623 | + | |
| 1624 | + | |
| 1625 | + | |
| 1626 | + | |
1618 | 1627 | | |
1619 | | - | |
1620 | | - | |
1621 | | - | |
| 1628 | + | |
| 1629 | + | |
| 1630 | + | |
| 1631 | + | |
1622 | 1632 | | |
1623 | 1633 | | |
1624 | | - | |
| 1634 | + | |
| 1635 | + | |
| 1636 | + | |
| 1637 | + | |
| 1638 | + | |
| 1639 | + | |
| 1640 | + | |
| 1641 | + | |
| 1642 | + | |
| 1643 | + | |
| 1644 | + | |
| 1645 | + | |
| 1646 | + | |
| 1647 | + | |
| 1648 | + | |
| 1649 | + | |
| 1650 | + | |
| 1651 | + | |
| 1652 | + | |
1625 | 1653 | | |
1626 | 1654 | | |
1627 | 1655 | | |
| |||
2908 | 2936 | | |
2909 | 2937 | | |
2910 | 2938 | | |
| 2939 | + | |
| 2940 | + | |
| 2941 | + | |
| 2942 | + | |
| 2943 | + | |
2911 | 2944 | | |
2912 | 2945 | | |
2913 | | - | |
| 2946 | + | |
| 2947 | + | |
2914 | 2948 | | |
2915 | 2949 | | |
2916 | 2950 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1799 | 1799 | | |
1800 | 1800 | | |
1801 | 1801 | | |
1802 | | - | |
| 1802 | + | |
1803 | 1803 | | |
1804 | | - | |
1805 | | - | |
1806 | 1804 | | |
1807 | 1805 | | |
1808 | 1806 | | |
| |||
1820 | 1818 | | |
1821 | 1819 | | |
1822 | 1820 | | |
1823 | | - | |
| 1821 | + | |
1824 | 1822 | | |
1825 | 1823 | | |
1826 | 1824 | | |
| |||
1831 | 1829 | | |
1832 | 1830 | | |
1833 | 1831 | | |
1834 | | - | |
| 1832 | + | |
1835 | 1833 | | |
1836 | 1834 | | |
1837 | 1835 | | |
| |||
1850 | 1848 | | |
1851 | 1849 | | |
1852 | 1850 | | |
1853 | | - | |
| 1851 | + | |
1854 | 1852 | | |
1855 | 1853 | | |
1856 | 1854 | | |
| |||
1865 | 1863 | | |
1866 | 1864 | | |
1867 | 1865 | | |
1868 | | - | |
1869 | | - | |
| 1866 | + | |
| 1867 | + | |
| 1868 | + | |
1870 | 1869 | | |
1871 | 1870 | | |
1872 | 1871 | | |
1873 | | - | |
| 1872 | + | |
1874 | 1873 | | |
1875 | 1874 | | |
1876 | 1875 | | |
| |||
1886 | 1885 | | |
1887 | 1886 | | |
1888 | 1887 | | |
| 1888 | + | |
| 1889 | + | |
| 1890 | + | |
| 1891 | + | |
| 1892 | + | |
| 1893 | + | |
| 1894 | + | |
| 1895 | + | |
| 1896 | + | |
| 1897 | + | |
| 1898 | + | |
| 1899 | + | |
| 1900 | + | |
| 1901 | + | |
| 1902 | + | |
| 1903 | + | |
| 1904 | + | |
| 1905 | + | |
| 1906 | + | |
| 1907 | + | |
| 1908 | + | |
| 1909 | + | |
| 1910 | + | |
| 1911 | + | |
| 1912 | + | |
| 1913 | + | |
| 1914 | + | |
| 1915 | + | |
| 1916 | + | |
| 1917 | + | |
| 1918 | + | |
| 1919 | + | |
| 1920 | + | |
| 1921 | + | |
| 1922 | + | |
| 1923 | + | |
| 1924 | + | |
| 1925 | + | |
| 1926 | + | |
| 1927 | + | |
| 1928 | + | |
| 1929 | + | |
| 1930 | + | |
1889 | 1931 | | |
1890 | 1932 | | |
1891 | 1933 | | |
1892 | 1934 | | |
1893 | 1935 | | |
1894 | 1936 | | |
1895 | 1937 | | |
1896 | | - | |
| 1938 | + | |
1897 | 1939 | | |
1898 | 1940 | | |
1899 | 1941 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1523 | 1523 | | |
1524 | 1524 | | |
1525 | 1525 | | |
1526 | | - | |
1527 | | - | |
1528 | | - | |
1529 | | - | |
1530 | | - | |
1531 | | - | |
1532 | | - | |
1533 | | - | |
1534 | 1526 | | |
1535 | 1527 | | |
1536 | 1528 | | |
| |||
1608 | 1600 | | |
1609 | 1601 | | |
1610 | 1602 | | |
1611 | | - | |
1612 | | - | |
1613 | | - | |
1614 | | - | |
1615 | | - | |
1616 | | - | |
| 1603 | + | |
| 1604 | + | |
| 1605 | + | |
| 1606 | + | |
| 1607 | + | |
| 1608 | + | |
| 1609 | + | |
| 1610 | + | |
1617 | 1611 | | |
| 1612 | + | |
| 1613 | + | |
| 1614 | + | |
| 1615 | + | |
| 1616 | + | |
| 1617 | + | |
| 1618 | + | |
| 1619 | + | |
| 1620 | + | |
| 1621 | + | |
| 1622 | + | |
| 1623 | + | |
| 1624 | + | |
| 1625 | + | |
| 1626 | + | |
1618 | 1627 | | |
1619 | | - | |
1620 | | - | |
1621 | | - | |
| 1628 | + | |
| 1629 | + | |
| 1630 | + | |
| 1631 | + | |
1622 | 1632 | | |
1623 | 1633 | | |
1624 | | - | |
| 1634 | + | |
| 1635 | + | |
| 1636 | + | |
| 1637 | + | |
| 1638 | + | |
| 1639 | + | |
| 1640 | + | |
| 1641 | + | |
| 1642 | + | |
| 1643 | + | |
| 1644 | + | |
| 1645 | + | |
| 1646 | + | |
| 1647 | + | |
| 1648 | + | |
| 1649 | + | |
| 1650 | + | |
| 1651 | + | |
| 1652 | + | |
1625 | 1653 | | |
1626 | 1654 | | |
1627 | 1655 | | |
| |||
2908 | 2936 | | |
2909 | 2937 | | |
2910 | 2938 | | |
| 2939 | + | |
| 2940 | + | |
| 2941 | + | |
| 2942 | + | |
| 2943 | + | |
2911 | 2944 | | |
2912 | 2945 | | |
2913 | | - | |
| 2946 | + | |
| 2947 | + | |
2914 | 2948 | | |
2915 | 2949 | | |
2916 | 2950 | | |
| |||
0 commit comments