Hi platm72 ,
to add an element to an existing group by dragging it inside the group using the Layers panel is the one method.
The other method is:
1. Convert the selected group to a new Multistate Object (MSO).
2. Select the MSO and the item you want to add to a group. Add it to the active state of the MSO.
3. Use Shift + Esc to select the active state instead the whole MSO.
4. Hold the alt key and drag the selected group part of the active state as duplicate out of the MSO.
Sounds complicated, but one could do it in seconds.
And it can be scripted without using any menu actions. :-)
By help of a temporary MSO.
Example:
Here we have two objects on the first spread of an InDesign document. The only items in the document:
A group of yellow rectangles where an effect is applied to the group, a drop shadow.
The second object is a magenta circle without any effect applied.

Then run this script snippet below that will add the magenta circle to the group WITHOUT ungrouping the group:
/**
* @@@BUILDINFO@@@ AddItemToGroup-WITHOUT-Ungrouping-USING-TEMP-MSO.jsx !Version! Tue Aug 20 2019 13:34:21 GMT+0200
*/
/*
Script snippet by Uwe Laubender
Posted at Adobe InDesign Scripting in thread:
How to add element(s) to an existing group without ungrouping
platm72 Aug 19, 2019
https://forums.adobe.com/message/11219570#11219570
Just an example to add one item to an existing group without ungrouping the group.
The trick is to use a temp multistate object for this.
All properties of the initial group are maintained.
Two exceptions:
1. name
That could be restored easily.
2. id
Why? In the end we will work with a duplicate of the group.
*/
// Active document:
var doc = app.documents[0];
// First group on the first spread of the active document:
var myGroup = doc.spreads[0].groups[0];
// Name of that group ( OPTIONAL ):
var myGroupName = myGroup.name;
// First oval, the circle is an oval, on the first spread of the active document:
var myItemToAdd = doc.spreads[0].ovals[0];
// Add a new MSO on the same spread where the group and the circle is.
// Make its dimensions the same as the group's ( OPTIONAL ).
var myTempMSO = doc.spreads[0].multiStateObjects.add
(
{ geometricBounds : myGroup.geometricBounds }
);
// Add the group as new state to the MSO:
// It will add this as the third state in the MSO because the added MSO has to have two states if not specified otherwise:
myTempMSO.addItemsAsState( [myGroup] );
// Add the circle to the third state of the added MSO:
// FWIW: a state consists of two top items in scripting, a state object and a group object:
myTempMSO.states[2].addItemsToState( [myItemToAdd] );
// Duplicate the first group of the third state of the MSO that now contains the circle as well:
var newGroup = myTempMSO.states[2].groups[0].duplicate();
// Rename that new group ( OPTIONAL ) to the name of the inital group:
newGroup.name = myGroupName;
// Finally remove the MSO. It is not needed anymore:
myTempMSO.remove();
The result is this: The circle is added to the group. Hm. In fact it is a duplicate of the group. The effect on the group, the drop shadow, is applied as well:

Regards,
Uwe