core-web.cordis.yml 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. # Opt-in Web shell for the RL core agent contract. The model receives exactly
  2. # the configured persona plus the native `bash` and `str_replace_editor`
  3. # schemas; the Web host, browser shell, persistence, and permission stack stay.
  4. # Match the Claude SWE-compatible RL core prompt. Disabling the Web runtime's
  5. # surface context removes its GUI orientation, managed shell variables, and the
  6. # launcher's source-checkout section through one configuration contract.
  7. # Workspace instructions are model-visible user context rather than a system
  8. # section, but RL core disables them as part of the same prompt contract.
  9. - id: system-prompt
  10. config:
  11. includeHarnessIdentity: false
  12. persona: !!js process.env.DSH_SYSTEM_PROMPT ?? 'You are a helpful software engineer assistant.'
  13. - id: web-runtime
  14. config:
  15. surfaceContext: false
  16. - id: workspace-context
  17. disabled: true
  18. - id: tools
  19. config:
  20. mode: native
  21. # Disable every model-facing consumer in the base/Web tree. plan-mode owns the
  22. # always-registered exit_plan_mode tool even while the session is not planning.
  23. - id: tool-bash
  24. disabled: true
  25. - id: tool-tasks
  26. disabled: true
  27. - id: tool-fs
  28. disabled: true
  29. - id: tool-fs-search
  30. disabled: true
  31. - id: tool-web
  32. disabled: true
  33. - id: tool-skill
  34. disabled: true
  35. - id: plan-mode
  36. disabled: true
  37. - id: tool-subagent-control
  38. disabled: true
  39. - id: tool-subagent-list-agents
  40. disabled: true
  41. - id: tool-subagent
  42. disabled: true
  43. - id: tool-subagent-fork
  44. disabled: true
  45. - id: tool-workflow
  46. disabled: true
  47. - id: tool-todo
  48. disabled: true
  49. # These consumers are shared defaults on the ordinary shipped surfaces, but
  50. # this opt-in profile keeps exactly its two named tools.
  51. - id: tool-goal
  52. disabled: true
  53. - id: tool-ralph
  54. disabled: true
  55. - id: tool-str-replace-editor
  56. disabled: true
  57. # The matching browser controls must not offer host tools that this profile
  58. # omits. ui-question's host half owns the ask_user_question registration.
  59. - id: ui-plan
  60. disabled: true
  61. - id: ui-question
  62. disabled: true
  63. - insert:
  64. - id: pty
  65. name: '@deepseek-ai/dsh-pty'
  66. # This backend consumes the existing Web sandbox and permission policy.
  67. # It loads only on Linux/macOS; Windows and other platforms fail at boot.
  68. # Its 300s send wait matches the persistent Bash command timeout instead of
  69. # pty-local's 30s default. An open persistent shell fences permission-mode
  70. # changes until it closes.
  71. - id: pty-local
  72. name: '@deepseek-ai/dsh-pty-local'
  73. config:
  74. timeoutMs: 300000
  75. - id: persistent-bash
  76. name: '@deepseek-ai/dsh-tool-bash-persistent'
  77. config:
  78. timeoutMs: 300000
  79. # The editor consumes the Web fs-sandbox provider and therefore retains
  80. # the selected session permission mode.
  81. - id: str-replace-editor
  82. name: '@deepseek-ai/dsh-tool-str-replace-editor'
  83. config:
  84. maxOutputChars: 16000