Commit graph

2198 commits

Author SHA1 Message Date
Anon
dacf09b553
bugfix: Fixed command registration for external MCC scripts 2026-03-24 19:24:31 +01:00
copilot-swe-agent[bot]
9eba4d026c Improve UnregisterChatBotCommands doc comment per review feedback
Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/d34fe951-43e5-412d-8d7f-cf9bee3a0d77
2026-03-24 18:15:01 +00:00
copilot-swe-agent[bot]
da3b2de2ce Fix Roslyn compiler missing netstandard/System.Runtime references (CS0012)
Add netstandard.dll and System.Runtime.dll as metadata references in both
the self-contained and non-self-contained compilation paths. These facade
assemblies are required when scripts reference libraries targeting
netstandard (e.g. Brigadier.NET), preventing CS0012 errors like:
"The type 'Object' is defined in an assembly that is not referenced."

Also make the self-contained path resilient to missing facade assemblies
by catching FileNotFoundException instead of throwing.

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/d34fe951-43e5-412d-8d7f-cf9bee3a0d77
2026-03-24 18:10:04 +00:00
copilot-swe-agent[bot]
54e07cd233 Address review: use TrimEntries in ChatBotCommand args split for consistency
Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/27fc44b8-50d8-4194-8057-019a29675d4a
2026-03-24 17:44:35 +00:00
copilot-swe-agent[bot]
687d1746ed Fix command registration for external MCC scripts
- Update Roslyn compiler LanguageVersion from CSharp9 to Latest
- Implement ChatBotCommand.RegisterCommand() (was empty)
- Add RegisterChatBotCommand() helper to ChatBot base class
- Add automatic command cleanup in BotUnLoad via UnregisterChatBotCommands()
- Fix external scripts using Handler.dispatcher (CS0176 static via instance)
- Fix AutoTree.cs wrong Initialize/OnUnload signatures (CS0115)
- EntityCount.cs RegisterChatBotCommand() now works with new helper

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/27fc44b8-50d8-4194-8057-019a29675d4a
2026-03-24 17:43:14 +00:00
copilot-swe-agent[bot]
34bc6c5400 Initial plan 2026-03-24 17:29:28 +00:00
Anon
84858a55ee
[skipci]Merge pull request #2977 from milutinke/skills/integration-testing-improvements 2026-03-24 18:16:26 +01:00
Anon
a98b15fb3c Tightened the rules. 2026-03-24 18:15:32 +01:00
Anon
54d7b81e7b Improved the integration testing skill based on usage 2026-03-24 17:50:04 +01:00
Anon
bce1cd9290
[skipci]Merge pull request #2975 from milutinke/master 2026-03-24 16:35:23 +01:00
Anon
d6aa9d101f
Merge pull request #15 from milutinke/copilot/create-csharp-optimization-skill 2026-03-24 16:34:02 +01:00
Anon
7aee32d079
Merge pull request #2974 from milutinke/master 2026-03-24 16:32:07 +01:00
Anon
8f99f1b2be
Merge pull request #14 from milutinke/copilot/modernize-code-to-csharp-14 2026-03-24 15:41:33 +01:00
Anon
f64757edea Fixed inventory crashing on 1.13-1.13.2 2026-03-24 15:39:50 +01:00
copilot-swe-agent[bot]
47e943562e Optimize csharp-optimization skill using writing-skills and prompt engineering insights
Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/milutinke/Minecraft-Console-Client/sessions/6df02c0b-e2cd-445e-9793-4ca4652d78d3
2026-03-24 10:17:52 +00:00
copilot-swe-agent[bot]
bd6aae0060 Add writing-skills from sickn33/antigravity-awesome-skills
Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/milutinke/Minecraft-Console-Client/sessions/6df02c0b-e2cd-445e-9793-4ca4652d78d3
2026-03-24 10:13:33 +00:00
copilot-swe-agent[bot]
0a409ad394 Address code review feedback: fix pidof command, document ThreadStatic reentrancy caveat, fix endian swap example
Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/milutinke/Minecraft-Console-Client/sessions/bcd1f692-997d-4646-b364-02e1179643bb
2026-03-24 10:04:28 +00:00
copilot-swe-agent[bot]
4808b61b9a Add csharp-optimization skill for C# performance optimization in MCC
Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/milutinke/Minecraft-Console-Client/sessions/bcd1f692-997d-4646-b364-02e1179643bb
2026-03-24 10:02:54 +00:00
copilot-swe-agent[bot]
eca27be1fa Initial plan 2026-03-24 09:55:21 +00:00
copilot-swe-agent[bot]
aeec731ae5 Merge remote-tracking branch 'origin/master' into copilot/modernize-code-to-csharp-14 2026-03-24 08:52:57 +00:00
Anon
3a5283285a
Merge pull request #2971 from MCCTeam/copilot/modernize-authentication-module 2026-03-24 09:49:42 +01:00
copilot-swe-agent[bot]
654a16907b Modernize data carriers to records and add primary constructors
Convert 14 data carrier classes to records:
- VillagerInfo, MapIcon, EnchantmentData: non-positional records (mutable properties)
- ForgeMod, SkinInfo, VillagerTrade, Node, Response: positional records
- CommandNode: sealed positional record
- CommandArgumentDescriptor: readonly record struct
- ColorRGBA: record struct (multiple constructors preserved)
- RecipeConfig, Recipe, BannerLayer: non-positional records

Add primary constructors to 6 classes:
- DataTypes, Protocol18Terrain, Protocol18Forge, ItemMovingHelper,
  LastSeenMessageList, Acknowledgment, SuggestionTooltip

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-24 01:31:17 +00:00
copilot-swe-agent[bot]
81b756292e Fix all compilation warnings (CS9107, CS8600, CS8604, CS8618, CS0168, CS0169, CS0649)
- Fix CS9107: Replace lowercase primary constructor parameter refs with
  PascalCase base class properties in 90+ StructuredComponent files
- Fix CS8618: Add null! initializers for late-initialized properties
- Fix CS8600: Use nullable out parameters in World.cs, ChatParser.cs
- Fix CS8604: Add null guard in Compiler.cs, fix null-conditional in McClient.cs
- Fix CS0168: Replace unused variable with discard in DataTypes.cs
- Fix CS0169: Remove unused motionY field from McClient.cs
- Fix CS0649: Remove never-assigned steps field, simplify ClientIsMoving()
- Initialize client/handler with null! to avoid CS8618 cascade

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/milutinke/Minecraft-Console-Client/sessions/7fcee1b2-21e2-4457-b01b-5e0a1f07752f
2026-03-24 01:25:50 +00:00
copilot-swe-agent[bot]
640a4e39b7 Fix CS9107 warnings: use base class properties instead of captured primary constructor parameters
Replace lowercase primary constructor parameter references (dataTypes.,
subComponentRegistry., itemPalette.) with PascalCase base class property
references (DataTypes., SubComponentRegistry., ItemPalette.) in method
bodies of all StructuredComponent and SubComponent subclasses.

This eliminates CS9107 warnings where subclass primary constructor
parameters shadow the base class properties they are assigned to.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-24 01:16:05 +00:00
copilot-swe-agent[bot]
94bf42710a refactor: use pattern matching for null checks (is null / is not null)
Convert remaining == null to is null and != null to is not null
across 17 files in CommandHandler/ArgumentType, StructuredComponents,
and DeclareCommands for idiomatic C# style.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-24 00:47:03 +00:00
copilot-swe-agent[bot]
c7bc25aa17 refactor: convert == null / != null to is null / is not null in 31 files
Replace old-style null comparisons with modern C# pattern matching
syntax across Commands, Protocol, Mapping, ChatBots, Physics,
Inventory, Logger, CommandHandler, Scripting, Crypto, and other modules.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-24 00:42:59 +00:00
copilot-swe-agent[bot]
446c6e7739 refactor: convert redundant new TypeName() to target-typed new()
Replace explicit constructor calls with target-typed new() expressions
where the type is already specified on the left side of the assignment.
This is a C# 9+ feature that reduces redundancy.

Files changed:
- Container.cs: field assignments in constructors
- EntityPalette18/112/113.cs: static field initializers
- ChatParser.cs: StringBuilder local variable
- Movement.cs: field assignments in constructor
- PacketPalette18.cs: field initializers
- EnchantmentMapping.cs: field reassignments

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-24 00:37:35 +00:00
copilot-swe-agent[bot]
2ae31e269f Convert switch statements to expressions and adopt collection expressions
- DirectionExtensions.cs: Convert GetOpposite() to switch expression,
  use file-scoped namespace, use collection expression for HORIZONTAL
- McClient.cs: Convert InteractType switch to expression, use collection
  expressions for array literals
- Protocol18.cs: Replace Array.Empty<byte>() with [], use collection
  expressions for byte/int array literals
- DataTypes.cs: Use collection expression for TAG_End byte array
- ChatBot.cs: Use collection expressions for string/char arrays
- Location.cs: Use collection expressions and modernize null check

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/milutinke/Minecraft-Console-Client/sessions/4e9bd25b-22c5-47c2-98f9-6025d927b1d6
2026-03-24 00:34:00 +00:00
copilot-swe-agent[bot]
c5df6a49c6 Modernize null-check patterns: use 'is null' and 'is not null'
Replace '== null' with 'is null' and '!= null' with 'is not null'
across 19 core files following modern C# pattern matching conventions.

Only literal null comparisons are changed. Assignments, value
comparisons, and LINQ expressions are left untouched.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-24 00:28:02 +00:00
copilot-swe-agent[bot]
902e944cbb Modernize null-check patterns in Protocol18.cs
Replace '== null' with 'is null' and '!= null' with 'is not null'
for all 25 null comparisons in the file, following modern C# pattern
matching conventions.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-24 00:23:31 +00:00
copilot-swe-agent[bot]
cf34db526b refactor: modernize null-check patterns in McClient.cs
Replace '== null' with 'is null' and '!= null' with 'is not null'
across 51 occurrences to use idiomatic C# pattern matching.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-24 00:21:37 +00:00
copilot-swe-agent[bot]
74def7c512 Modernize lock object declarations from object to System.Threading.Lock
Replace all lock object declarations using 'object' type with the C# 13
System.Threading.Lock type across 12 files. The Lock type provides a
more efficient locking mechanism - when used with lock(), the compiler
automatically uses Lock.EnterScope() instead of Monitor.Enter/Exit.

Also made two previously non-readonly lock fields readonly:
- McClient.DigLock
- Protocol18.MessageSigningLock

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-24 00:15:21 +00:00
copilot-swe-agent[bot]
e09b997cdf Initial plan 2026-03-24 00:05:56 +00:00
Anon
99e73b1df4
[skipci]Merge pull request #2973 from milutinke/misc/prompt-engineering-skill
Added the mcc-prompt-engineer skill to docs for ai assisted development
2026-03-23 17:35:40 +01:00
Anon
23ac2f9639
[skipci]Merge pull request #2972 from milutinke/misc/prompt-engineering-skill 2026-03-23 17:33:48 +01:00
Anon
d4c6f4d708 Added the mcc-prompt-engineer skill to docs for ai assisted development 2026-03-23 17:31:08 +01:00
Anon
102a175881 Added a prompt engineering skill 2026-03-23 17:15:17 +01:00
copilot-swe-agent[bot]
a9930b0a67 Update authentication documentation for OAuth 2.0 device code flow
- Update Account setting in configuration.md: clarify that Microsoft
  accounts don't need passwords (device code flow with 2FA support),
  add separate examples for Microsoft, offline, and Yggdrasil accounts
- Update usage.md: add tip about device code flow for Microsoft accounts,
  update command-line examples to show Microsoft and offline patterns,
  clarify that password is not needed in config files for Microsoft auth
- Update README.md features list: add Microsoft authentication with 2FA
  support as a listed feature

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/3afd0e85-19ae-45c7-ac4b-c2b7bf733008
2026-03-23 15:59:35 +00:00
copilot-swe-agent[bot]
94c6425a2b Address code review: add SlowDownIncrementSeconds constant, return OtherError for device code failures
Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/e13b31f3-8d76-4240-bb69-a519a145fc6a
2026-03-23 15:41:25 +00:00
copilot-swe-agent[bot]
5147fb42df Replace PPFT/urlPost HTML scraping with OAuth 2.0 device code flow for 2FA support
- Add Microsoft.RequestDeviceCode() and Microsoft.PollDeviceCodeToken() methods
- Remove XboxLive.PreAuth() and XboxLive.UserLogin() (HTML scraping)
- Remove PreAuthResponse struct, PPFT/urlPost regex patterns
- Update XblAuthenticate to always use "d=" prefix for OAuth tokens
- Update MicrosoftMCCLogin to use device code flow
- Skip password prompting for Microsoft device code method
- Add translation strings for device code prompts
- Update config comments and documentation

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/e13b31f3-8d76-4240-bb69-a519a145fc6a
2026-03-23 15:38:47 +00:00
copilot-swe-agent[bot]
daeec49789 Initial plan 2026-03-23 15:23:27 +00:00
Anon
8f4e6b08b3
[skipci]Merge pull request #2970 from milutinke/feature/true-20-tps-runtime 2026-03-23 15:39:19 +01:00
Anon
b2eeb80659 Improved AGENTS.md 2026-03-23 15:38:29 +01:00
Anon
445c236914 Improved the development workflow and testing skills using skill-creator and a real server testing + feedback from actual workflow 2026-03-23 15:35:34 +01:00
Anon
932d01fb30
Merge pull request #2969 from milutinke/feature/true-20-tps-runtime 2026-03-23 15:34:54 +01:00
Anon
9efb7ef767 Remove obsolete 20 TPS smoke harness 2026-03-23 14:37:37 +01:00
Anon
484133f07a Run MCC at true 20 TPS 2026-03-23 14:29:04 +01:00
Anon
a18b5d2415
[skipci]Merge pull request #2968 from MCCTeam/copilot/update-termux-installation-docs 2026-03-23 13:56:57 +01:00
copilot-swe-agent[bot]
a0a69caeea docs: replace .NET 8 with .NET 10 in Android/Termux install section
Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/4d7542ac-8231-4da1-bc87-b617d718cc97
2026-03-23 12:43:10 +00:00
copilot-swe-agent[bot]
a16152410e Fix 404 MCC download in Android/Termux install docs
Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/f43c042f-896c-40a8-a28f-67a945e5dbcb
2026-03-23 12:35:47 +00:00